CN103634358A - 一种浏览器适配方法和装置 - Google Patents

一种浏览器适配方法和装置 Download PDF

Info

Publication number
CN103634358A
CN103634358A CN201210308009.XA CN201210308009A CN103634358A CN 103634358 A CN103634358 A CN 103634358A CN 201210308009 A CN201210308009 A CN 201210308009A CN 103634358 A CN103634358 A CN 103634358A
Authority
CN
China
Prior art keywords
browser
adaptation processing
file
type
processing file
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.)
Pending
Application number
CN201210308009.XA
Other languages
English (en)
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.)
ZTE ICT Technologies Co Ltd
Original Assignee
ZTE ICT 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 ZTE ICT Technologies Co Ltd filed Critical ZTE ICT Technologies Co Ltd
Priority to CN201210308009.XA priority Critical patent/CN103634358A/zh
Publication of CN103634358A publication Critical patent/CN103634358A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种浏览器适配方法和装置,应用于Web网站,其中,所述方法包括:根据浏览器发来的超文本传输协议(HTTP)请求,确定所述浏览器的类型;从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件;加载所述适配处理文件。本发明可以实现根据需要加载预存的适配处理文件,避免原有程序代码与适配处理文件强耦合。

Description

一种浏览器适配方法和装置
技术领域
本发明涉及互联网技术,尤其涉及一种浏览器适配方法和装置。
背景技术
通常,PC机通过浏览器向Web网站发起超文本传输协议(Hyper TextTransfer Protocol,HTTP)请求,Web网站根据收到的所述请求向所述浏览器返回网页文件,所述网页文件为根据超文本标记语言(Hypertext MarkupLanguage,HTML)编写的文本文件,所述文本文件中包括各种标记符。浏览器根据预设的标记符解释对收到的页面文件中的各种标记符进行解析,并显示解析得到的网页内容。
随着互联网技术的不断发展,浏览器的种类不断增加,目前,浏览器主要包括IE、Firefox、Chrome、Safari、Opera等。不同的浏览器预设的标记符解释会有差别,即对同一标记符可能会有不同的解释,这样,不同的浏览器对Web网站发来的相同网页文件解析得到的网页内容可能会不一样,甚至有些时候解析得到的网页内容是异常的。
为解决上述问题,目前,Web网站在原有程序代码上强耦合浏览器适配代码,使Web网站针对不同的浏览器,发出相应的网页文件,以避免不同的浏览器解析得到的网页内容不一样。但是,随着浏览器的种类的不断增加,与Web网站原有程序代码强耦合的浏览器适配代码越来越多,不仅导致程序代码不易维护和扩展,甚至影响原有程序代码的正常运行。
发明内容
有鉴于此,本发明的主要目的在于提供一种浏览器适配方法和装置,可以根据需要加载预存的适配处理文件,避免原有程序代码与适配处理文件强耦合。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种浏览器适配方法,应用于Web网站,所述方法包括:
根据浏览器发来的超文本传输协议(HTTP)请求,确定所述浏览器的类型;
从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件;
加载所述适配处理文件。
较佳地,所述适配处理文件包括:样式文件和脚本文件,其中,所述样式文件由层叠样式表单(CSS)代码组成,所述脚本文件由JavaScript代码组成。
较佳地,所述加载所述适配处理文件,为,
创建与所述适配处理文件中的样式文件和/或脚本文件对应关联的样式节点和/或脚本节点,将所述样式节点和/或脚本节点添加到页面文件,并激活所述样式节点和/或脚本节点。
较佳地,所述根据浏览器发来的HTTP请求,确定所述浏览器的类型,为,
根据浏览器发来的HTTP请求中的User Agent属性,确定所述浏览器的类型。
较佳地,所述从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件之前,所述方法还包括:
判断预存的若干适配处理文件中,是否存储有与所述浏览器的类型对应的适配处理文件,当存储有与所述浏览器的类型对应的适配处理文件时,执行选取与所述浏览器的类型对应的适配处理文件的操作。
本发明提供了一种浏览器适配装置,应用于Web网站,所述装置包括:
浏览器类型确定单元,用于根据浏览器发来的超文本传输协议(HTTP)请求,确定所述浏览器的类型;
适配处理文件选取单元,用于从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件;
适配处理文件加载单元,用于加载所述适配处理文件。
较佳地,所述适配处理文件包括:样式文件和脚本文件,其中,所述样式文件由层叠样式表单(CSS)代码组成,所述脚本文件由JavaScript代码组成。
较佳地,所述适配处理文件加载单元,具体用于创建与所述适配处理文件中的样式文件和/或脚本文件对应关联的样式节点和/或脚本节点,将所述样式节点和/或脚本节点添加到页面文件,并激活所述样式节点和/或脚本节点。
较佳地,浏览器类型确定单元,具体用于根据浏览器发来的HTTP请求中的User Agent属性,定所述浏览器的类型。
较佳地,所述装置还包括:
判断单元,用于判断预存的若干适配处理文件中,是否存储有与所述浏览器的类型对应的适配处理文件,当存储有与所述浏览器的类型对应的适配处理文件时,通知适配处理文件选取单元执行选取与所述浏览器的类型对应的适配处理文件的操作。
由上可知,本发明的技术方案包括:根据浏览器发来的HTTP请求,确定所述浏览器的类型;从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件;加载所述适配处理文件,由此,本发明根据需要加载预存的适配处理文件,避免原有程序代码与适配处理文件强耦合,不仅可以使程序代码易于维护和扩展,而且不影响原有程序代码的正常运行。
附图说明
图1为本发明提供的浏览器适配方法的第一实施例的流程图;
图2为本发明提供的浏览器适配装置的实施例的结构示意图;
图3为为本发明提供的浏览器适配方法的第二实施例的流程图。
具体实施方式
本发明的基本思想是:根据浏览器发来的超文本传输协议(HTTP)请求,确定所述浏览器的类型;从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件;加载所述适配处理文件。
本发明提供的浏览器适配方法的第一实施例应用于Web网站,如图1所示,所述方法包括:
步骤101、根据浏览器发来的HTTP请求,确定所述浏览器的类型;
步骤102、从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件;
步骤103、加载所述适配处理文件。
较佳地,所述适配处理文件包括:样式文件和脚本文件,其中,所述样式文件由层叠样式表单(Cascading Style Sheets,CSS)代码组成,所述脚本文件由JavaScript代码组成。
较佳地,所述步骤103可以为,创建与所述适配处理文件中的样式文件和/或脚本文件对应关联的样式节点和/或脚本节点,将所述样式节点和/或脚本节点添加到页面文件,并激活所述样式节点和/或脚本节点。
较佳地,所述步骤101可以为,所述根据浏览器发来的HTTP请求中的UserAgent属性,确定所述浏览器的类型。
较佳地,所述步骤102之前,所述方法还可以包括:判断预存的若干适配处理文件中,是否存储有与所述浏览器的类型对应的适配处理文件,当存储有与所述浏览器的类型对应的适配处理文件时,执行选取与所述浏览器的类型对应的适配处理文件的操作。
本发明还提供的浏览器适配装置的实施例应用于Web网站,如图2所示,所述装置包括:
浏览器类型确定单元,用于根据浏览器发来的HTTP请求,确定所述浏览器的类型;
适配处理文件选取单元,用于从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件;
适配处理文件加载单元,用于加载所述适配处理文件。
较佳地,所述适配处理文件可以包括:样式文件和脚本文件,其中,所述样式文件由CSS代码组成,所述脚本文件由JavaScript代码组成。
较佳地,所述适配处理文件加载单元,可以具体用于创建与所述适配处理文件中的样式文件和/或脚本文件对应关联的样式节点和/或脚本节点,将所述样式节点和/或脚本节点添加到页面文件,并激活所述样式节点和/或脚本节点。
较佳地,浏览器类型确定单元,可以具体用于根据浏览器发来的HTTP请求中的User Agent属性,确定所述浏览器的类型。
较佳地,所述装置还可以包括:判断单元,用于判断预存的若干适配处理文件中,是否存储有与所述浏览器的类型对应的适配处理文件,当存储有与所述浏览器的类型对应的适配处理文件时,通知适配处理文件选取单元执行选取与所述浏览器的类型对应的适配处理文件的操作。
下面对本发明提供的浏览器适配方法的第二实施例进行介绍,如图3所示,所述方法包括:
步骤301、Web网站根据浏览器发来的HTTP请求,确定所述浏览器的类型;
具体的,所述Web网站根据浏览器发来的HTTP请求中的User Agent属性,确定所述浏览器的类型。
步骤302、Web网站判断自身是否已经加载与所述浏览器的类型对应的适配处理文件,当没有加载与所述浏览器的类型对应的适配处理文件时,进入步骤303;当已经加载与所述浏览器的类型对应的适配处理文件时,结束本次流程。
步骤303、Web网站判断预存的若干适配处理文件中,是否存储有与所述浏览器的类型对应的适配处理文件,当存储有与所述浏览器的类型对应的适配处理文件时,进入步骤304;当没有存储与所述浏览器的类型对应的适配处理文件时,结束本次流程;
具体的,可以通过发起异步JavaScript和可扩展标记语言(AsynchronousJavaScript and Extensible Markup Language,AJAX)请求,查询适配处理文件目录下适配处理文件的文件名的方式,判断预存在适配处理文件目录下的若干适配处理文件中,是否存储有与所述浏览器的类型对应的适配处理文件;
所述适配处理文件包括:样式文件和脚本文件,其中,所述样式文件由CSS代码组成,所述脚本文件由JavaScript代码组成,所述适配处理文件可以根据其所适配的浏览器的名称命名;
例如,与Firefox浏览器对应的适配处理文件“Firefox”中包括样式文件Firefox.css和脚本文件Firefox.js,与Chrome浏览器对应的适配处理文件“Chrome”中包括样式文件Chrome.css和脚本文件Chrome.js,对应于各浏览器的适配处理文件均存储在统一的适配处理文件目录下。
步骤304、Web网站从预存的若干适配处理文件中,选取对应的适配处理文件;
步骤305、Web网站加载所述适配处理文件。
具体的,创建与选取的适配处理文件中的样式文件和/或脚本文件对应关联的样式节点和/或脚本节点,将所述样式节点和/或脚本节点添加到页面文件,并激活所述样式节点和/或脚本节点,即可完成所述适配处理文件的加载;
实践中,在加载原有程序代码之后,加载所述适配处理文件。
综上,本发明可以避免原有程序代码与适配处理文件强耦合,这样,就可以根据需要仅在适配处理文件目录下增加新的适配处理文件,也可以仅对适配处理文件目录下已有的适配处理文件进行修改,还可以仅删除适配处理文件目录下已有的适配处理文件,由此实现在不影响原有程序代码的情况下,对适配处理文件进行扩展和维护。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (10)

1.一种浏览器适配方法,应用于Web网站,其特征在于,所述方法包括:
根据浏览器发来的超文本传输协议(HTTP)请求,确定所述浏览器的类型;
从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件;
加载所述适配处理文件。
2.根据权利要求1所述的方法,其特征在于,所述适配处理文件包括:样式文件和脚本文件,其中,所述样式文件由层叠样式表单(CSS)代码组成,所述脚本文件由JavaScript代码组成。
3.根据权利要求2所述的方法,其特征在于,所述加载所述适配处理文件,为,
创建与所述适配处理文件中的样式文件和/或脚本文件对应关联的样式节点和/或脚本节点,将所述样式节点和/或脚本节点添加到页面文件,并激活所述样式节点和/或脚本节点。
4.根据权利要求1所述的方法,其特征在于,所述根据浏览器发来的HTTP请求,确定所述浏览器的类型,为,
根据浏览器发来的HTTP请求中的User Agent属性,确定所述浏览器的类型。
5.根据权利要求1所述的方法,其特征在于,所述从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件之前,所述方法还包括:
判断预存的若干适配处理文件中,是否存储有与所述浏览器的类型对应的适配处理文件,当存储有与所述浏览器的类型对应的适配处理文件时,执行选取与所述浏览器的类型对应的适配处理文件的操作。
6.一种浏览器适配装置,应用于Web网站,其特征在于,所述装置包括:
浏览器类型确定单元,用于根据浏览器发来的超文本传输协议(HTTP)请求,确定所述浏览器的类型;
适配处理文件选取单元,用于从预存的若干适配处理文件中,选取与所述浏览器的类型对应的适配处理文件;
适配处理文件加载单元,用于加载所述适配处理文件。
7.根据权利要求6所述的装置,其特征在于,所述适配处理文件包括:样式文件和脚本文件,其中,所述样式文件由层叠样式表单(CSS)代码组成,所述脚本文件由JavaScript代码组成。
8.根据权利要求6所述的装置,其特征在于,所述适配处理文件加载单元,具体用于创建与所述适配处理文件中的样式文件和/或脚本文件对应关联的样式节点和/或脚本节点,将所述样式节点和/或脚本节点添加到页面文件,并激活所述样式节点和/或脚本节点。
9.根据权利要求6所述的装置,其特征在于,浏览器类型确定单元,具体用于根据浏览器发来的HTTP请求中的User Agent属性,定所述浏览器的类型。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
判断单元,用于判断预存的若干适配处理文件中,是否存储有与所述浏览器的类型对应的适配处理文件,当存储有与所述浏览器的类型对应的适配处理文件时,通知适配处理文件选取单元执行选取与所述浏览器的类型对应的适配处理文件的操作。
CN201210308009.XA 2012-08-27 2012-08-27 一种浏览器适配方法和装置 Pending CN103634358A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210308009.XA CN103634358A (zh) 2012-08-27 2012-08-27 一种浏览器适配方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210308009.XA CN103634358A (zh) 2012-08-27 2012-08-27 一种浏览器适配方法和装置

Publications (1)

Publication Number Publication Date
CN103634358A true CN103634358A (zh) 2014-03-12

Family

ID=50214980

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210308009.XA Pending CN103634358A (zh) 2012-08-27 2012-08-27 一种浏览器适配方法和装置

Country Status (1)

Country Link
CN (1) CN103634358A (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103942291A (zh) * 2014-04-11 2014-07-23 北京金山网络科技有限公司 在浏览器界面显示信息的方法及装置
CN106547806A (zh) * 2015-09-23 2017-03-29 阿里巴巴集团控股有限公司 页面加载方法及装置
CN106599306A (zh) * 2016-12-29 2017-04-26 重庆南华中天信息技术有限公司 网络页面中css样式的兼容显示方法
CN106649820A (zh) * 2016-12-29 2017-05-10 重庆南华中天信息技术有限公司 一种web服务器
CN106648687A (zh) * 2016-12-29 2017-05-10 重庆南华中天信息技术有限公司 一种电子设备
CN106648686A (zh) * 2016-12-29 2017-05-10 重庆南华中天信息技术有限公司 一种web前端css资源请求处理装置
CN106682181A (zh) * 2016-12-29 2017-05-17 重庆南华中天信息技术有限公司 一种web前端css资源请求处理方法
CN106682191A (zh) * 2016-12-29 2017-05-17 重庆南华中天信息技术有限公司 一种css资源前端显示方法
CN107066496A (zh) * 2016-12-29 2017-08-18 重庆南华中天信息技术有限公司 一种兼容不同浏览器和终端设备的页面访问方法
CN107528714A (zh) * 2016-06-22 2017-12-29 中兴通讯股份有限公司 脚本处理方法、装置、***及路由器
CN108090069A (zh) * 2016-11-22 2018-05-29 北京神州泰岳软件股份有限公司 一种在浏览器中显示网页资源的方法和装置
CN108388454A (zh) * 2018-01-24 2018-08-10 广州市动景计算机科技有限公司 动态提供兼容js脚本内容的方法、装置和终端设备
CN110083383A (zh) * 2019-03-18 2019-08-02 平安普惠企业管理有限公司 浏览器式样兼容方法、装置、计算机设备及存储介质
CN115470127A (zh) * 2022-09-06 2022-12-13 北京海泰方圆科技股份有限公司 页面兼容性处理方法、装置、计算机设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070220480A1 (en) * 2006-03-17 2007-09-20 Microsoft Corporation Dynamic generation of cascading style sheets
CN101178717A (zh) * 2007-12-05 2008-05-14 优视动景(北京)技术服务有限公司 一种对网页进行适配处理的方法及网页适配装置
CN101615121A (zh) * 2009-07-22 2009-12-30 福州星网视易信息***有限公司 Bs平台信息发布***的样式编辑器
CN101895582A (zh) * 2010-07-15 2010-11-24 北京邮电大学 一种支持web业务和多浏览器的sip软终端及其工作方法
CN102637135A (zh) * 2011-02-09 2012-08-15 北京千橡网景科技发展有限公司 用于编译层叠样式表的方法和设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070220480A1 (en) * 2006-03-17 2007-09-20 Microsoft Corporation Dynamic generation of cascading style sheets
CN101178717A (zh) * 2007-12-05 2008-05-14 优视动景(北京)技术服务有限公司 一种对网页进行适配处理的方法及网页适配装置
CN101615121A (zh) * 2009-07-22 2009-12-30 福州星网视易信息***有限公司 Bs平台信息发布***的样式编辑器
CN101895582A (zh) * 2010-07-15 2010-11-24 北京邮电大学 一种支持web业务和多浏览器的sip软终端及其工作方法
CN102637135A (zh) * 2011-02-09 2012-08-15 北京千橡网景科技发展有限公司 用于编译层叠样式表的方法和设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
黎亚红等: ""CSS在不同浏览器中的兼容性问题浅析"", 《岳阳职业技术学院学报》 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103942291A (zh) * 2014-04-11 2014-07-23 北京金山网络科技有限公司 在浏览器界面显示信息的方法及装置
CN106547806A (zh) * 2015-09-23 2017-03-29 阿里巴巴集团控股有限公司 页面加载方法及装置
CN106547806B (zh) * 2015-09-23 2020-12-18 阿里巴巴集团控股有限公司 页面加载方法及装置
CN107528714A (zh) * 2016-06-22 2017-12-29 中兴通讯股份有限公司 脚本处理方法、装置、***及路由器
CN108090069A (zh) * 2016-11-22 2018-05-29 北京神州泰岳软件股份有限公司 一种在浏览器中显示网页资源的方法和装置
CN107066496A (zh) * 2016-12-29 2017-08-18 重庆南华中天信息技术有限公司 一种兼容不同浏览器和终端设备的页面访问方法
CN106682181A (zh) * 2016-12-29 2017-05-17 重庆南华中天信息技术有限公司 一种web前端css资源请求处理方法
CN106682191A (zh) * 2016-12-29 2017-05-17 重庆南华中天信息技术有限公司 一种css资源前端显示方法
CN106648686A (zh) * 2016-12-29 2017-05-10 重庆南华中天信息技术有限公司 一种web前端css资源请求处理装置
CN106648687A (zh) * 2016-12-29 2017-05-10 重庆南华中天信息技术有限公司 一种电子设备
CN106649820A (zh) * 2016-12-29 2017-05-10 重庆南华中天信息技术有限公司 一种web服务器
CN106599306A (zh) * 2016-12-29 2017-04-26 重庆南华中天信息技术有限公司 网络页面中css样式的兼容显示方法
CN108388454A (zh) * 2018-01-24 2018-08-10 广州市动景计算机科技有限公司 动态提供兼容js脚本内容的方法、装置和终端设备
CN108388454B (zh) * 2018-01-24 2021-08-20 阿里巴巴(中国)有限公司 动态提供兼容js脚本内容的方法、装置和终端设备
CN110083383A (zh) * 2019-03-18 2019-08-02 平安普惠企业管理有限公司 浏览器式样兼容方法、装置、计算机设备及存储介质
CN115470127A (zh) * 2022-09-06 2022-12-13 北京海泰方圆科技股份有限公司 页面兼容性处理方法、装置、计算机设备和存储介质
CN115470127B (zh) * 2022-09-06 2023-08-15 北京海泰方圆科技股份有限公司 页面兼容性处理方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
CN103634358A (zh) 一种浏览器适配方法和装置
CN104765622B (zh) 页面资源的加载方法及装置
EP2916243B1 (en) Method, apparatus, server and system for implementing web application
CA2742059C (en) Method and system for automated analysis and transformation of web pages
CN103778365B (zh) 一种检测网页隐藏内容的方法,及设备
CN105022750A (zh) 资源文件加载方法和装置
CN105095280A (zh) 一种浏览器缓存方法和装置
CN101876897A (zh) 用于在Web浏览器上处理Widget的***和方法
CN102109989A (zh) 一种控制浏览器缓存的方法、装置和***
US20100017729A1 (en) Method for accessing a parent page while browsing web pages
CN103294700A (zh) 一种跨浏览器的数据本地存储方法和装置
CN103577603A (zh) 一种网页加载方法、装置及***
CN104618435A (zh) 实现远程桌面的方法及远程桌面管理***
CN102981845B (zh) 浏览器进行页面元素处理的方法及装置
JP5488349B2 (ja) 中継装置、中継方法及び中継プログラム
CN104915454A (zh) 一种文件预览***及方法
CN103440143A (zh) 移动web应用升级***及方法
JP2010170453A (ja) 静的Webサイト構築方法及び静的Webサイト構築サービス提供方法及び動的/静的変換処理装置及び動的/静的変換処理プログラム
CN105528369A (zh) 网页转码方法、装置以及服务器
CN104361067A (zh) 一种浏览器网页信息的智能加载方法及***
US10095791B2 (en) Information search method and apparatus
CN110704721A (zh) 客户端数据处理方法、装置、终端设备及可读存储介质
CN102004729A (zh) 一种网站网页的展现方法、***及网站服务器
CN104461509A (zh) 一种信息交互架构及方法
CA2527885A1 (en) Verifying content of resources in markup language documents

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20140312

RJ01 Rejection of invention patent application after publication