CN104375931A - 一种移动浏览器特性检测及结果统计方法 - Google Patents

一种移动浏览器特性检测及结果统计方法 Download PDF

Info

Publication number
CN104375931A
CN104375931A CN201310356604.5A CN201310356604A CN104375931A CN 104375931 A CN104375931 A CN 104375931A CN 201310356604 A CN201310356604 A CN 201310356604A CN 104375931 A CN104375931 A CN 104375931A
Authority
CN
China
Prior art keywords
html
attribute
class
features
event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310356604.5A
Other languages
English (en)
Other versions
CN104375931B (zh
Inventor
孙帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Cheerbright Technologies Co Ltd
Original Assignee
Beijing Cheerbright Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Cheerbright Technologies Co Ltd filed Critical Beijing Cheerbright Technologies Co Ltd
Priority to CN201310356604.5A priority Critical patent/CN104375931B/zh
Publication of CN104375931A publication Critical patent/CN104375931A/zh
Application granted granted Critical
Publication of CN104375931B publication Critical patent/CN104375931B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明涉及浏览器技术领域,具体公开了一种移动浏览器特性检测及结果统计方法;包括:对待检测的移动浏览器进行特性判断及特性分类;特性包括事件类特性、样式变化类特性、对象属性类特性;将按特性分类后的移动浏览器分别进行处理,事件类特性的检测:检测并判断事件是否包含HTML ELEMENT元素,即是否支持事件;样式变化类特性的检测:通过定义模拟元素待检测的样式,将模拟元素预期得到属性结果写成回调方法,传入模拟变化后元素样式实际的值,判断回调中的预期结果与实际结果是否相等,即是否支持样式;HTML对象属性类特性的检测;根据不同特性的检测,得到移动浏览器是否支持相应的特性。本发明可以单一依靠特性检测,并且特性支持数据结果收集统计。

Description

一种移动浏览器特性检测及结果统计方法
技术领域
本发明涉及浏览器技术领域,尤其是涉及一种移动浏览器特性检测及结果统计方法。
背景技术
随着移动互联网的兴起,人们在移动端使用互联网时间越来越长。移动端对用户交互的需求越来越高,进而HTML5和CSS3技术应用越来越广泛。HTML5是用于取代1999年所制定的HTML4.01和XHTML1.0标准的HTML标准版本。HTML5有两大特点:首先,强化了Web网页的表现性能。其次,追加了本的数据库等Web应用的功能。广义论及HTML5时,实际指的是包括HTML、CSS和JavaScript在内的一套技术组合,此组合旨在减少浏览器对于插件的丰富网络应用服务(plug-in-based rich internet application,RIA),如Adobe Flash、Microsoft Silver Light,和Oracle Java FX插件,并提供更多有效增强网络应用的标准集。CSS即层叠样式表(Cascading Style Sheet),在网页制作时采用CSS技术,可以有效的对页面的布局、字体、颜色、背景和其它效果实现更加精确的控制。只要对相应的代码做一些简单的修改,就可以改变同一页面的不同部分,或者页数不同的网页的外观和格式。CSS3是CSS技术的升级版本,CSS3语言开发是朝着模块化发展的。以前的规范作为一个模块过于庞大而且非常复杂,所以,将它分解为一些小的模块,也能使更多新模块也加入进来;这些模块包括:盒子模型、列表模块、超链接方式、语言模块、背景和边框、文字特效和多栏布局等。
对于不同的操作系统,不同版本的浏览器对HTML5和CSS3技术的支持参差不齐,传统情况下,开发人员通过User-Agent判断浏览器,User-Agent(用户代理)是一个只读的字符串,声明了浏览器用于HTTP请求的User-Agent Header(用户代理头0的值。一般来讲,User-Agent是在navigator.appCodeName的值之后加上斜线和navigator.appVersion的值构成的,appCodeName属性是一个只读字符串,声明了浏览器的代码名;navigator.appVersion判断客户端浏览器类型和版本,这是HTMLREF.CHM里面的内容。User-Agent只针对浏览器进行判断,判断结果往往一刀切,造成浏览器因为不支持其中某一项,而舍弃了其它的功能项。
现有技术使用简单的浏览器特性检测,往往仅是单一判断,没有体系化整体判断,对特性检测的结果也无法收集统计,无法了解产品的用户群体。目前还没有有效的解决方案。
发明内容
本发明所解决的技术问题是提供一种移动浏览器特性检测及结果统计方法,本发明避免了现有技术只对浏览器本身进行检测,若浏览器不支持其中一项,便舍弃其它部分,造成技术不能大规模应用的问题;同时解决了浏览器单一依靠特性检测不成体系,并且特性支持数据无法进行结果收集统计的问题。本发明抛弃浏览器种类检测,依靠特性检测,不但可以得到单一特性支持,而且选择相应技术,还能够通过特定方法,对一组重要特性的支持度进行结果收集,提高了用户体验效果。
为了解决上述技术问题,本发明提供了一种移动浏览器特性检测方法,包括:
S1、对待检测的移动浏览器进行特性判断及特性分类;所述特性包括事件类特性、样式变化类特性和对象属性类特性;
S2、将按所述特性分类后的所述移动浏览器分别进行处理,选择下述步骤S2.1、S2.2或S2.3一种或几种进行处理;
S2.1、所述事件类特性的检测:列举出与HTML ELEMENT相关的事件,检测所述事件,创建HTML ELEMENT元素,判断所述事件是否包含所述HTML ELEMENT元素,所述HTML ELEMENT元素包含选择,改变,提交,复位,误差,负载和中止,依次加入是或否未定义的方法进行判断;
若所述判断的结果为未定义,则所述移动浏览器不支持所述事件;
若所述判断的结果不为未定义,则所述移动浏览器支持所述事件;
S2.2、所述样式变化类特性的检测:通过DHTML的cssText API,定义模拟元素待检测的样式,所述样式包含:高度,宽度,圆角,背景,阴影,渐变和字体格式,通过所述模拟元素的所述样式的变化,将所述模拟元素预期得到属性结果写成回调方法,调用设置的所述回调方法,传入模拟变化后元素样式实际的值,两者进行属性上的比较,判断回调中的预期结果与实际结果是否相等;
若所述预期结果与所述实际结果相等,则浏览器支持所述样式;
若所述预期结果与所述实际结果不相等,则所述浏览器不支持所述样式或支持所述样式但所述样式存在缺陷;
S2.3、所述HTML对象属性类特性的检测:预先设置一个待检测的HTML属性集合,所述HTML属性集合包含:地理信息,网页工作类,本地数据库,套接字连接,画板,本地缓存,信息传递,音频和视频,通过所述HTML属性集合创建一个对应的检测方法,所述检测方法中使用关键字“in”与待检测的所述HTML对象进行属性类特性比较,判断是否为变量未定义;
若是所述变量未定义,则所述HTML对象不支持所述属性;
若不是所述变量未定义,则所述HTML对象支持所述属性;
S3:根据步骤S2中三种不同特性的检测,得到所述移动浏览器是否支持相应的所述事件、是否支持相应的所述样式、或是否具有相应的所述属性的特性的检测结果。
优选的,所述步骤S2.1中,创建元素时,使用DHTML的API创建元素。
更加优选的,所述优先选取是找到被创建所述元素,进而通过“.”运算符找到所述特征的事件。
一种移动浏览器结果统计方法,包括:
定义待检测的特性集合,对待测对象中的所述特性集合进行调用,放入待测浏览器中进行运行,对不同特性的结果进行判断,为真则记录1,为假则记录0;
将1或0,按从左往右的顺序排列,得到一个二进制数,通过所述二进制数判断对应位上的结果是真还是假,进而反推出特性检测结果。
优选地,所述特性集合包括事件类特性、样式变化类特性和HTML对象属性类特性。
其中,所述API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
其中,所述DHTML是Dynamic HTML的简称,就是动态的html,是相对传统的静态的html而言的一种制作网页的概念。所谓动态HTML(Dynamic HTML,简称DHTML),其实并不是一门新的语言,它只是HTML、CSS和客户端脚本的一种集成,即一个页面中包括html+css+javascript(或其它客户端脚本),其中css和客户端脚本是直接在页面上写而不是链接上相关文件。DHTML不是一种技术、标准或规范,只是一种将目前已有的网页技术、语言标准整合运用,制作出能在下载后仍然能实时变换页面元素效果的网页设计概念。
其中,所述cssText API是一种用于操作样式表的应用程序接口。API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
本发明与现有技术相比,具有如下有益效果:
本发明避免了现有技术只对浏览器本身进行检测,若浏览器不支持其中一项,便舍弃其它部分,造成技术不能大规模应用的问题;同时解决了浏览器单一依靠特性检测不成体系,并且特性支持数据无法进行结果收集统计的问题。本发明抛弃浏览器种类检测,依靠特性检测,不但可以得到单一特性支持,而且特性检测直接调用注册好的特性检测方法,进行调用得到相应结果,还能够通过特定方法,对一组重要特性的支持度进行结果收集,然后决定产品中最大化可以使用的技术。
附图说明
图1示例性的示出了一种移动浏览器特性检测及结果统计方法流程示意图。
具体实施方式
为了更好的理解本发明所解决的技术问题、所提供的技术方案,以下结合附图及实施例,对本发明进行进一步详细说明。此处所描述的具体实施例仅用以解释本发明的实施,但并不用于限定本发明。
在优选的实施例中,图1示例性的示出了一种移动浏览器特性检测及结果统计方法流程示意图;包括:
步骤一、对待检测的移动浏览器进行特性判断及特性分类;所述特性包括事件类特性、样式变化类特性和对象属性类特性;
步骤二、将按所述特性分类后的所述移动浏览器分别进行处理,选择下述事件类特性、样式变化类特性、对象属性类特性检测的一种或几种进行处理;
①所述事件类特性的检测:列举出与HTML ELEMENT相关的事件,检测所述事件,创建HTML ELEMENT元素,判断所述事件是否包含所述HTML ELEMENT元素,所述HTML ELEMENT元素包含选择,改变,提交,复位,误差,负载和中止,依次加入是或否未定义的方法进行判断;
若所述判断的结果为未定义,则所述移动浏览器不支持所述事件;
若所述判断的结果不为未定义,则所述移动浏览器支持所述事件;
②所述样式变化类特性的检测:通过DHTML的cssText API,定义模拟元素待检测的样式,所述样式包含:高度,宽度,圆角,背景,阴影,渐变和字体格式,通过所述模拟元素的所述样式的变化,将所述模拟元素预期得到属性结果写成回调方法,调用设置的所述回调方法,传入模拟变化后元素样式实际的值,两者进行属性上的比较,判断回调中的预期结果与实际结果是否相等;
若所述预期结果与所述实际结果相等,则浏览器支持所述样式;
若所述预期结果与所述实际结果不相等,则所述浏览器不支持所述样式或支持所述样式但所述样式存在缺陷;
③所述HTML对象属性类特性的检测:预先设置一个待检测的HTML属性集合,所述HTML属性集合包含:地理信息,网页工作类,本地数据库,套接字连接,画板,本地缓存,信息传递,音频和视频,通过所述HTML属性集合创建一个对应的检测方法,所述检测方法中使用关键字“in”与待检测的所述HTML对象进行属性类特性比较,判断是否为变量未定义;
若是所述变量未定义,则所述HTML对象不支持所述属性;
若不是所述变量未定义,则所述HTML对象支持所述属性;
步骤三、根据所述步骤二中三种不同特性的检测,得到所述移动浏览器是否支持相应的所述事件、是否支持相应的所述样式、或是否具有相应的所述属性的特性的检测结果。
在更加优选的实施例中,,所述步骤二中,所述事件类特性的检测中创建元素时,使用DHTML的API创建元素。
在更加优选的实施例中,,所述优先选取是找到被创建所述元素,进而通过“.”运算符找到所述特征的事件。
在优选的实施例中,一种移动浏览器结果统计方法,包括:
定义待检测的特性集合,对待测对象中的所述特性集合进行调用,放入待测浏览器中进行运行,对不同特性的结果进行判断,为真则记录1,为假则记录0;
将1或0,按从左往右的顺序排列,得到一个二进制数,通过所述二进制数判断对应位上的结果是真还是假,进而反推出特性检测结果。
在更加优选的实施例中,所述特性集合包括事件类特性、样式变化类特性和HTML对象属性类特性。
具体的实施例中:
①选取要测试的HTML属性、CSS样式或浏览器事件集合。如:HTML属性类websockets,CSS样式rgba,浏览器事件hashchange;
②通过调用register注册集合,然后把代码附加到自己网站的页面底部;
③声明变量,通过所述提到的结果收集方法,把结果保存在声明的变量中,发送到数据收集服务器;
④根据收集到的数据,把二进制数转换为二进制数的集合,统计分析用户浏览器中支持的所述三类特性。
以上通过具体的和优选的实施例详细的描述了本发明,但本领域技术人员应该明白,本发明并不局限于以上所述实施例,凡在本发明的基本原理之内,所作的任何修改、组合及等同替换等,均包含在本发明的保护范围之内。

Claims (5)

1.一种移动浏览器特性检测方法,其特征在于,包括:
S1、对待检测的移动浏览器进行特性判断及特性分类;所述特性包括事件类特性、样式变化类特性和对象属性类特性;
S2、将按所述特性分类后的所述移动浏览器分别进行处理,选择下述步骤S2.1、S2.2或S2.3一种或几种进行处理;
S2.1、所述事件类特性的检测:列举出与HTML ELEMENT相关的事件,检测所述事件,创建HTML ELEMENT元素,判断所述事件是否包含所述HTML ELEMENT元素,所述HTML ELEMENT元素包含选择,改变,提交,复位,误差,负载和中止,依次加入是或否未定义的方法进行判断;
若所述判断的结果为未定义,则所述移动浏览器不支持所述事件;
若所述判断的结果不为未定义,则所述移动浏览器支持所述事件;
S2.2、所述样式变化类特性的检测:通过DHTML的cssText API,定义模拟元素待检测的样式,所述样式包含:高度,宽度,圆角,背景,阴影,渐变和字体格式,通过所述模拟元素的所述样式的变化,将所述模拟元素预期得到属性结果写成回调方法,调用设置的所述回调方法,传入模拟变化后元素样式实际的值,两者进行属性上的比较,判断回调中的预期结果与实际结果是否相等;
若所述预期结果与所述实际结果相等,则浏览器支持所述样式;
若所述预期结果与所述实际结果不相等,则所述浏览器不支持所述样式或支持所述样式但所述样式存在缺陷;
S2.3、所述HTML对象属性类特性的检测:预先设置一个待检测的HTML属性集合,所述HTML属性集合包含:地理信息,网页工作类,本地数据库,套接字连接,画板,本地缓存,信息传递,音频和视频,通过所述HTML属性集合创建一个对应的检测方法,所述检测方法中使用关键字“in”与待检测的所述HTML对象进行属性类特性比较,判断是否为变量未定义;
若是所述变量未定义,则所述HTML对象不支持所述属性;
若不是所述变量未定义,则所述HTML对象支持所述属性;
S3:根据步骤S2中三种不同特性的检测,得到所述移动浏览器是否支持相应的所述事件、是否支持相应的所述样式、或是否具有相应的所述属性的特性的检测结果。
2.根据权利要求1所述的移动浏览器特性检测方法,其特征在于,优选的,所述步骤S2.1中,创建元素时,使用DHTML的API创建元素。
3.根据权利要求1所述的移动浏览器特性检测方法,其特征在于,所述优先选取是找到被创建所述元素,进而通过“.”运算符找到所述特征的事件。
4.一种移动浏览器结果统计方法,其特征在于,包括:
定义待检测的特性集合,对待测对象中的所述特性集合进行调用,放入待测浏览器中进行运行,对不同特性的结果进行判断,为真则记录1,为假则记录0;
将1或0,按从左往右的顺序排列,得到一个二进制数,通过所述二进制数判断对应位上的结果是真还是假,进而反推出特性检测结果。
5.根据权利要求4所述的移动浏览器结果统计方法,其特征在于,所述特性集合包括事件类特性、样式变化类特性和HTML对象属性类特性。
CN201310356604.5A 2013-08-15 2013-08-15 一种移动浏览器特性检测及结果统计方法 Active CN104375931B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310356604.5A CN104375931B (zh) 2013-08-15 2013-08-15 一种移动浏览器特性检测及结果统计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310356604.5A CN104375931B (zh) 2013-08-15 2013-08-15 一种移动浏览器特性检测及结果统计方法

Publications (2)

Publication Number Publication Date
CN104375931A true CN104375931A (zh) 2015-02-25
CN104375931B CN104375931B (zh) 2017-05-03

Family

ID=52554866

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310356604.5A Active CN104375931B (zh) 2013-08-15 2013-08-15 一种移动浏览器特性检测及结果统计方法

Country Status (1)

Country Link
CN (1) CN104375931B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874193A (zh) * 2017-01-09 2017-06-20 深圳市赛亿科技开发有限公司 一种检测flex布局属性完整性的方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10275157A (ja) * 1997-03-31 1998-10-13 Sanyo Electric Co Ltd データ処理装置
CN102413486A (zh) * 2011-09-06 2012-04-11 中兴通讯股份有限公司 一种终端信息检测方法及系统
US20130006904A1 (en) * 2011-06-30 2013-01-03 Microsoft Corporation Personal long-term agent for providing multiple supportive services

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10275157A (ja) * 1997-03-31 1998-10-13 Sanyo Electric Co Ltd データ処理装置
US20130006904A1 (en) * 2011-06-30 2013-01-03 Microsoft Corporation Personal long-term agent for providing multiple supportive services
CN102413486A (zh) * 2011-09-06 2012-04-11 中兴通讯股份有限公司 一种终端信息检测方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
堂主: "Modernizr——为HTML5和CSS3而生!", 《博客》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874193A (zh) * 2017-01-09 2017-06-20 深圳市赛亿科技开发有限公司 一种检测flex布局属性完整性的方法及系统

Also Published As

Publication number Publication date
CN104375931B (zh) 2017-05-03

Similar Documents

Publication Publication Date Title
CN108304498B (zh) 网页数据采集方法、装置、计算机设备和存储介质
US9665256B2 (en) Identifying selected dynamic content regions
US8930818B2 (en) Visualization of website analytics
US10534512B2 (en) System and method for identifying web elements present on a web-page
CN106293675B (zh) 系统静态资源加载方法及装置
US20150074561A1 (en) Customizable themes for browsers and web content
US20130212465A1 (en) Postponed rendering of select web page elements
US20130326333A1 (en) Mobile Content Management System
US20120272338A1 (en) Unified tracking data management
US9910992B2 (en) Presentation of user interface elements based on rules
US9563611B2 (en) Merging web page style addresses
US20110167332A1 (en) System and Method for Generating Web Pages
CN104956362A (zh) 分析web应用程序的结构
CN102930057A (zh) 搜索实现方法和装置
WO2011069377A1 (zh) 生成微件的方法及装置
US20220350857A1 (en) Methods and systems for browser extension used to generate relative xpath, absolute xpath and/or css selectors
CN110968314B (zh) 一种页面生成方法及装置
CN104731815B (zh) 一种网页元素的绘制方法及装置
CN103258058A (zh) 页面展现方法、系统及浏览器
CN103942231A (zh) 一种网页的显示方法及电子设备
US20180089154A1 (en) Computer implemented system and method for transforming web content for display on multiple form factors
US9081865B2 (en) Identifying selected elements in dynamic content
CN117093386B (zh) 页面截图方法、装置、计算机设备和存储介质
US10198408B1 (en) System and method for converting and importing web site content
Sarkis et al. A multi-screen refactoring system for video-centric web applications

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant