一种对浏览器的处理方法和装置与流程

文档序号:16390466发布日期:2018-12-22 11:25阅读:134来源:国知局
一种对浏览器的处理方法和装置与流程

本申请涉及互联网技术领域,尤其涉及一种对浏览器的处理方法和装置。

背景技术

浏览器是指可以显示网页服务器或者文件系统的html文件(标准通用标记语言的一个应用)内容,并让用户与这些文件交互的一种软件。

浏览器用来显示在万维网或局域网等内的文字、图像及其他信息,这些文字或图像,可以是连接其他网址的超链接,用户可迅速及轻易地浏览各种信息,大部分网页为html格式。

浏览器最重要或者说核心的部分是“renderingengine”,称之为“渲染引擎”,习惯将之称为“浏览器内核”。浏览器内核负责对网页语法的解释(如标准通用标记语言下的一个应用html、javascript)并渲染(显示)网页。所以,通常所谓的浏览器内核也就是浏览器所采用的渲染引擎,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息。不同的浏览器内核对网页编写语法的解释也有不同,因此同一网页在不同的内核的浏览器里的渲染(显示)效果也可能不同。

随着网路技术的迅速发展,市场上出现了越来越多的浏览器,不同浏览器的内核又不尽相同,不同的内核对代码的解析也不同,这就给工作人员增加了很大的工作量,例如,理论上来说,在后开发的浏览器要能兼容之前所有版本浏览器,但无休止的兼容一些即将淘汰的浏览器不仅增加前端工作人员的工作量,而且还使得代码冗余,还会使所有的浏览器不能达到样式和功能的统一,用户体验差。



技术实现要素:

本申请的多个方面提供一种对浏览器的处理方法和装置,可以减少代码冗余,优化代码,而且还能降低前端工作人员的工作量。

本申请一方面提供一种对浏览器的处理方法,包括:

获取当前浏览器的内核和版本号;

根据所述当前浏览器的所述内核和所述版本号和传入的浏览器的内核和版本号确定所述当前浏览器是否需要兼容;

如果确定所述当前浏览器不需要兼容,则生成后续对所述当前浏览器的操作提示信息;或者,如果确定所述当前浏览器需要兼容,自动兼容所述当前浏览器。

可选地,根据所述当前浏览器的所述内核和所述版本号和所述传入的浏览器的所述内核和所述版本号确定所述当前浏览器是否需要兼容具体包括:

将所述当前浏览器的所述内核和所述版本号分别与所述传入的浏览器的所述内核和所述版本号进行比较;或者,先将所述当前浏览器的所述内核与传入的浏览器的内核进行比较,如果所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同,再将所述当前浏览器的所述版本号与所述传入的浏览器的版本号进行比较;

如果所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同且所述当前浏览器的所述版本号小于所述传入的浏览器的所述版本号,确定所述当前浏览器不需要兼容;或者,如果所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同且所述当前浏览器的所述版本号大于或等于所述传入的浏览器的所述版本号,则确定所述当前浏览器需要兼容。

可选地,所述获取所述当前浏览器的所述内核和所述版本号具体包括:

获取所述当前浏览器的系统说明内容;

从所述系统说明内容获取所述当前浏览器的所述内核和所述版本号。

可选地,所述获取所述当前浏览器的所述系统说明内容具体包括:

通过对象.用户代理(navigator.useragent)获取所述当前浏览器的所述系统说明内容。

可选地,如果所述当前浏览器的所述内核与所述传入的浏览器的所述内核不相同,确定所述当前浏览器与所述传入的浏览器互为不同的浏览器,忽略所述当前浏览器的所述版本号与所述传入的浏览器的所述版本号的比较。

本申请的另一方免费提供一种对浏览器的处理装置,包括:

获取模块,用于获取当前浏览器的内核和版本号;

确定模块,用于根据所述当前浏览器的所述内核和所述版本号和传入的浏览器的内核和版本号确定所述当前浏览器是否需要兼容;

处理模块,用于如果所述确定模块确定所述当前浏览器不需要兼容,则生成后续对所述当前浏览器的操作提示信息;或者,用于如果所述确定模块确定所述当前浏览器需要兼容,自动兼容所述当前浏览器。

可选地,所述确定模块包括:

比较单元,用于将所述当前浏览器的所述内核和所述版本号分别与所述传入的浏览器的所述内核和所述版本号进行比较;或者,用于先将所述当前浏览器的所述内核与传入的浏览器的内核进行比较,如果所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同,再将所述当前浏览器的所述版本号与所述传入的浏览器的版本号进行比较;

确定单元,用于如果所述比较单元的比较结果为所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同且所述当前浏览器的所述版本号小于所述传入的浏览器的所述版本号,确定所述当前浏览器不需要兼容;或者,用于如果所述比较单元的比较结果为所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同且所述当前浏览器的所述版本号大于或等于所述传入的浏览器的所述版本号,则确定所述当前浏览器需要兼容。

可选地,所述获取模块包括:

第一获取单元,用于获取所述当前浏览器的系统说明内容;

第二获取单元,用于从所述系统说明内容获取所述当前浏览器的所述内核和所述版本号。

可选地,所述第一获取单元用于获取所述当前浏览器的所述系统说明内容具体包括:

所述第一获取单元用于通过对象.用户代理(navigator.useragent)获取所述当前浏览器的所述系统说明内容。

可选地,所述确定单元还用于如果所述比较单元的比较结果为所述当前浏览器的所述内核与所述传入的浏览器的所述内核不相同,确定所述当前浏览器与所述传入的浏览器互为不同的浏览器;

所述比较单元还用于忽略所述当前浏览器的所述版本号与所述传入的浏览器的所述版本号的比较。

上述描述的对浏览器的处理方法和装置,判断当前浏览器是否需要兼容,如果需要兼容就忽略提示,如果不需要兼容就提示更换浏览器或者提升当前浏览器的版本,可以减少代码的冗余,优化代码,降低前端工作人员的工作量。

附图说明

图1为本申请一实施例的一种对浏览器的处理方法的流程示意图;

图2为本申请另一实施例的一种对浏览器的处理装置的结构示意图。

图3为本申请另一实施例的另一种对浏览器的处理装置的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。另外,本文中术语“系统”和“网络”在本文中常被可互换使用。

如图1所示,为本申请一实施例的一种对浏览器的处理方法的流程示意图,该对浏览器的处理方法可以由处理器或芯片或处理电路执行,所述对浏览器的处理方法主要如下所述。

101,获取当前浏览器的内核和版本号。

例如,获取所述当前浏览器的系统说明内容,例如通过对象.用户代理(navigator.useragent)获取所述当前浏览器的系统说明内容,从所述系统说明内容获取所述当前浏览器的所述内核和所述版本号。

102,根据所述当前浏览器的所述内核和所述版本号和传入的浏览器的内核和版本号确定所述当前浏览器是否需要兼容。

例如,将所述当前浏览器的所述内核和所述版本号分别与所述传入的浏览器的所述内核和所述版本号进行比较,根据比较结果确定所述当前浏览器是否需要兼容。

在本申请的另一实施例中,先将所述当前浏览器的所述内核与传入的浏览器的内核进行比较,如果相同,再将所述当前浏览器的所述版本号与传入的浏览器的版本号进行比较,根据比较结果确定所述当前浏览器是否需要兼容。

所述传入的浏览器是指用于比较的目的浏览器,例如,可以是某个版本的浏览器,例如开发出的某个版本的浏览器。

103,如果确定所述当前浏览器不需要兼容,则生成后续对所述当前浏览器的操作提示信息。

例如,如果所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同且所述当前浏览器的所述版本号小于所述传入的浏览器的所述版本号,确定所述当前浏览器不需要兼容。

所述提示信息用于指示后续对所述当前浏览器的如何操作,例如,所述提示信息包括指示更换所述当前浏览器的信息或指示所述当前浏览器的版本较低需要升级的信息。

104,如果确定所述当前浏览器需要兼容,自动兼容所述当前浏览器。

如果所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同且所述当前浏览器的所述版本号大于或等于所述传入的浏览器的所述版本号,则确定所述当前浏览器需要兼容,即不需要生成后续对所述当前浏览器的操作提示信息。

105,如果所述当前浏览器的所述内核与所述传入的浏览器的所述内核不相同,确定所述当前浏览器与所述传入的浏览器互为不同的浏览器。

如果所述当前浏览器的所述内核与所述传入的浏览器的所述内核不相同,确定所述当前浏览器与所述传入的浏览器互为不同的浏览器,后续不需要进行对浏览器的处理,例如,可以忽略所述当前浏览器的所述版本号与所述传入的浏览器的所述版本号的比较。

在本申请的另一实施例中,当确定所述当前浏览器与所述传入的浏览器互为不同的浏览器时,还可以生成后续对所述当前浏览器的操作提示信息,例如,所述提示信息包括指示是否需要替换所述当前浏览器的信息。

上述描述的对浏览器的处理方法,判断当前浏览器是否需要兼容,如果需要兼容就忽略提示,如果不需要兼容就提示更换浏览器或者提升当前浏览器的版本,可以减少代码的冗余,优化代码,降低前端工作人员的工作量。

如图2所示,为本申请另一实施例的一种对浏览器的处理装置的结构示意图,所述对浏览器的处理装置包括:获取模块21、确定模块22和处理模块23,其中,所述获取模块21、所述确定模块22和所述处理模块23任意两个之间相互通信连接,例如通过总线或者电路相互连接。

所述总线可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该总线系统可以分为地址总线、数据总线、控制总线等。

所述获取模块21、所述确定模块22和所述处理模块23分别是一种逻辑划分,本申请并不局限划分的逻辑,例如所述获取模块21、所述确定模块22和所述处理模块23可以通过至少一个芯片或至少一个处理器实现,也可以分别由至少一个芯片或至少一个处理器实现,或者,所述获取模块21、所述确定模块22和所述处理模块23的任意两个模块通过至少一个芯片或至少一个处理器实现。

在本申请的另一实施例中,所述处理器可以是中央处理单元(centralprocessingunit,cpu),所述处理器还可以是其他通用控制处理器、数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。所述通用控制处理器可以是微控制处理器或者是任何常规的控制处理器,例如单片机等。

所述获取模块21,用于获取当前浏览器的内核和版本号;

所述确定模块22,用于根据所述当前浏览器的所述内核和所述版本号和传入的浏览器的内核和版本号确定所述当前浏览器是否需要兼容;

所述处理模块23,用于如果所述确定模块22确定所述当前浏览器不需要兼容,则生成后续对所述当前浏览器的操作提示信息;或者,用于如果所述确定模块22确定所述当前浏览器需要兼容,自动兼容所述当前浏览器。

例如,所述提示信息用于指示后续对所述当前浏览器的如何操作,例如,所述提示信息包括指示更换所述当前浏览器的信息或指示所述当前浏览器的版本较低需要升级的信息。

如图3所示,为本申请另一实施例的一种对浏览器的处理装置的结构示意图,结合图2,所述获取模块21包括第一获取单元211和第二获取单元212,所述确定模块22包括比较单元221和确定单元222。

所述第一获取单元211,用于获取所述当前浏览器的系统说明内容,例如,所述第一获取单元211用于通过navigator.useragent获取所述当前浏览器的所述系统说明内容。

所述第二获取单元212,用于从所述系统说明内容获取所述当前浏览器的所述内核和所述版本号。

例如,所述比较单元221,用于将所述当前浏览器的所述内核和所述版本号分别与所述传入的浏览器的所述内核和所述版本号进行比较;或者,用于先将所述当前浏览器的所述内核与传入的浏览器的内核进行比较,如果所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同,再将所述当前浏览器的所述版本号与所述传入的浏览器的版本号进行比较。

所述确定单元222,用于如果所述比较单元221的比较结果为所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同且所述当前浏览器的所述版本号小于所述传入的浏览器的所述版本号,确定所述当前浏览器不需要兼容;或者,用于如果所述比较单元221的比较结果为所述当前浏览器的所述内核与所述传入的浏览器的所述内核相同且所述当前浏览器的所述版本号大于或等于所述传入的浏览器的所述版本号,则确定所述当前浏览器需要兼容。

在本申请的另一实施例中,所述确定单元222还用于如果所述比较单元221的比较结果为所述当前浏览器的所述内核与所述传入的浏览器的所述内核不相同,确定所述当前浏览器与所述传入的浏览器互为不同的浏览器;所述比较单元221还用于忽略所述当前浏览器的所述版本号与所述传入的浏览器的所述版本号的比较。

在本申请的另一实施例中,当所述确定单元222确定所述当前浏览器与所述传入的浏览器互为不同的浏览器时,所述处理模块23还用于生成后续对所述当前浏览器的操作提示信息,例如,所述提示信息包括指示是否需要替换所述当前浏览器的信息。

本申请的另一实施例还提供一种计算机可读存储介质,计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质。计算机中的处理器读取存储在计算机可读存储介质中的计算机可读程序代码,使得处理器能够执行在流程图1中每个步骤、或各步骤的组合中规定的功能动作;生成实施在框图的每一块、或各块的组合中规定的功能动作的装置。

计算机可读存储介质包含但不限于电子、磁性、光学、电磁、红外的存储器或半导体系统、设备或者装置,或者前述的任意适当组合,所述存储器用于存储程序代码或指令,所述程序代码包括计算机操作指令,所述处理器用于执行所述存储器存储的程序代码或指令。

所述存储器可能包含易失性存储器,例如,随机存取存储器(randomaccessmemory,ram),所述ram可以包括静态ram或动态ram。所述存储器也可能包括非易失性存储器(non-volatilememory),例如只读存储器(read-onlymemory,prom)、可编程只读存储器(programmableread-onlymemory,prom)、可擦写可编程只读存储器(erasableprogrammableread-onlymemory,eprom)、电可擦写可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)或闪存(flashmemory)。所述存储器还可能是外部闪存、至少一个磁盘存储器或缓存器。

所述处理器可以是cpu、dsp、asic、fpga或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

以上所描述的装置实施例仅仅是示意性的,所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1