本发明专利技术公开了一种浏览器引擎模式的切换方法,包括:构建特征库,包括每种网页内部信息与适配的引擎模式的对应关系;浏览器在当前引擎模式下已打开一网页,收集所述网页的至少一种网页内部信息,结合所述特征库切换到适配的引擎模式。本发明专利技术可以有效检测当前网页是基于哪种内核,从而将浏览器切换至相应的引擎模式。
Method for switching browser engine mode
The invention discloses a switching method, a browser engine model including: Construction of feature library, including each kind of correspondence between \internal information and adaptation of the engine model; open a web browser in the current engine mode, at least one page within the web page information collection, combined with the characteristics of bank switching to fit the engine model. The invention can effectively detect what kind of kernel the current web page is based on, thereby switching the browser to the corresponding engine mode.
【技术实现步骤摘要】
本专利技术属于互联网领域,具体地说,涉及。
技术介绍
浏览器的内核,可以称之为内核或者排版引擎,也可以称为页面渲染引擎。它负责取得网页的内容(HTML、XML、图像等等)、整理信息(例如加入CSS等)以及计算网页的显示方式,然后会输出为用户能看到的网页。不同的浏览器内核对网页编写语法的解释不同, 因此同一网页在不同内核的浏览器里的渲染效果也可能不同,这也是网页编写者需要在不同内核的浏览器中测试网页显示效果的原因。现在浏览器的内核,主要包括=Trident内核,即IE内核,供IE浏览器使用;Gecko 内核,主要为Firefox浏览器所使用;WebKit内核,供Safari浏览器、Google Chrome浏览器、搜狗浏览器使用;Presto内核,主要应用在手机平台的Opera mini浏览器。以下主要以WebKit和Trident为例进行说明。WebKit是一个开源的浏览器的内核,其引擎高效稳定且源码结构清晰,渲染速度快,易于维护;其最重要的优点就是速度极快;Trident是IE的浏览器的内核,以下简称IE 内核,网站一般都基于此引擎搭载网页的内容,在这方面它得到了最广泛的支持;其最重要的优点就是兼容性最好。由于IE内核的浏览器对于市场的巨大的占用率,目前市场上大部分网站所提供的网页在设计时都是基于IE内核的,这些网页的一些内容只有IE内核的浏览器才能够正常运行,此时使用WebKit内核运行的浏览器是无法正常显示这些网页内容的。例如运行在这些网页上的一些控件只有通过IE内核的浏览器才能够完成调用启动,在基于WebKit 内核运行的浏览器上是无法打开的;用来搭建网页的页面结构的代码是通过一些特殊的程序语言编写的,而这些代码通过IE内核的浏览器才能够正常打开,而如果通过WebKit内核运行的浏览器打开则会出现页面结构的错乱或者显示文字的错乱。但是,IE内核在访问复杂网页时,容易出现速度慢、不流畅、崩溃的问题,而 WebKit则更能适应复杂的网页。考虑到IE内核在市场上仍然占有绝对地位,仍不能直接抛弃IE内核,因此目前市场上有些网站则专门设计了 WebKit和IE两个版本的网页,一个版本的网页供基于WebKit内核的浏览器显示,另一个版本的网页供基于IE内核的浏览器显示,但是由于WebKit内核的速度优势,用户在使用WebKit内核的浏览器时会带来更好的用户体验,因此这些网站一般会默认优先提供基于WebKit内核的网页。另外,目前市场上有些网站所提供的内容对浏览器的速度有要求,因此特别适用于基于WebKit内核的浏览器,所以这些网站在设计网页时是专门基于WebKit内核的,网页的一些内容只有基于WebKit内核的浏览器才能够正常运行,此时使用Trident内核运行的浏览器是无法正常显示这些网页内容的。针对上述情况,市场上出现了具有WebKit内核和IE内核的双引擎模式的浏览器, 根据网页的兼容情况自动选择“速度最快”的WebKit内核或“兼容性最好”的IE内核。但是对于网页的兼容情况的获知,这种双引擎模式的浏览器主要是通过识别用户当前试图访问的网页的网址,如www. 360. cn,根据这个网址去列表中进行识别,识别这个网址是适用 WebKit内核还是IE内核,然后启动这个网址适合的内核,如果列表中没有关于这个网页的记录,则无法进行自动切换,需要用户手动切换。可是此时用户不一定了解这个网页原本的功能,无从判断是否出现问题,例如这个网页在当前的引擎模式下被显示为错乱的页面结构,可是用户可能会认为网页本来的样子就是这样,无法判断出是否出了问题,更无法判断出是浏览器的引擎模式不适配而导致出现了问题;而且即使用户发现了问题也不知道如何解决,例如这个网页上存在一个视频控件,在当前引擎模式下无法播放并显示错误,但是用户并不知道是由于引擎模式导致的,用户很可能会认为是网页本身的问题,并不了解可以通过切换浏览器的引擎模式来解决问题,或浏览器的引擎模式的切换入口不明显而使用户不知道如何切换。同时,如果列表中没有关于这个网页的记录从而无法进行自动切换时,这种双引擎浏览器需要将这个网址上传至服务器侧,由官方人工验证网址是否确实在当前引擎模式下存在问题,如果确实存在问题再将这个网址根据适用的引擎模式加入列表,由服务器侧向各终端上的浏览器发布列表升级。在浏览器打开网页之前,通过用户输入的网址本身进行识别方式过于单一,而且可靠性较差,因为网址本身不能穷尽,每天都会新增很多的网页,网页列表的更新永远是滞后于新网址的产生的,而且列表需要通过人工维护,效率低下而且成本很高。
技术实现思路
有鉴于此,本专利技术所要解决的技术问题是提供了,可以有效检测当前网页是基于哪种内核,从而将浏览器切换至相应的引擎模式。为了解决上述技术问题,本专利技术公开了,包括构建特征库,包括每种网页内部信息与适配的引擎模式的对应关系;浏览器在当前引擎模式下已打开一网页,收集所述网页的至少一种网页内部信息,结合所述特征库切换到适配的引擎模式。进一步地,还包括所述特征库还包括每种网址属性与适配的引擎模式的对应关系;所述浏览器在当前引擎模式下打开一网页时,还收集所述网页的至少一种网址属性,结合所述特征库切换到适配的引擎模式。进一步地,还包括所述特征库还包括地址格式与适配的引擎模式的对应关系; 所述浏览器还收集网页所在服务器的地址,结合所述特征库切换到适配的引擎模式。进一步地,所述特征库还包括时长门限;浏览器在当前引擎模式下打开一网页时, 所述浏览器检测所述网页的打开时长,结合所述特征库判断,如所述时长超过所述时长门限,则切换至适配的引擎模式,否则,保持在当前引擎模式。进一步地,结合所述特征库切换到适配的引擎模式的步骤,包括对所述引擎模式设置优先级,收集所述网页的多种网页内部信息和/或网址属性和/或所在服务器的地址和/或打开时长并在所述特征库中进行命中,识别命中的各网页内部信息和/或网址属性和/或所在服务器的地址和/或打开时长分别对应的引擎模式中优先级最高的一引擎模式,所述浏览器在所述引擎模式下工作。进一步地,结合所述特征库切换到适配的引擎模式的步骤,包括对所述各种网页内部信息和/或网址属性和/或所在服务器的地址和/或打开时长设置优先级,按优先级顺序逐一收集所述网页的网页内部信息或网址属性并和/或所在服务器的地址和/或打开时长在所述特征库中进行命中,如果命中并匹配到不同于当前引擎模式的引擎模式,则停止收集并切换至所述引擎模式。进一步地,结合所述特征库切换到适配 的引擎模式的步骤,包括对所述各种网页内部信息和/或网址属性和/或所在服务器的地址和/或打开时长设置权重,收集所述网页的多种网页内部信息和/或网址属性和/或所在服务器的地址和/或打开时长并在所述特征库中进行命中,识别命中的各网页内部信息和/或网址属性和/或所在服务器的地址和/或打开时长分别对应的引擎模式,并结合命中的各网页内部信息和/或网址属性和/ 或所在服务器的地址和/或打开时长的权重分析出权重最高的一引擎模式,所述浏览器在所述引擎模式下工作。进一步地,当所述网页内部信息至少包括网页脚本时,所述浏览器检测所述网页启动的网页脚本,根据所述网页脚本启动的控件的标识在所述特征库中进行命中并获取对应的引擎模式。进一步地,当所本文档来自技高网...
【技术保护点】
1.一种浏览器引擎模式的切换方法,其特征在于,包括:构建特征库,其中包括每种网页内部信息与适配的引擎模式的对应关系;浏览器在当前引擎模式下已打开一网页,收集所述网页的至少一种网页内部信息,结合所述特征库切换到适配的引擎模式。
【技术特征摘要】
【专利技术属性】
技术研发人员:张勇,王天平,田亮,
申请(专利权)人:奇智软件北京有限公司,
类型:发明
国别省市:11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。