九州彩票苹果版

词条信息

admin
admin
超级管理员
词条创建者 发短消息   

相关词条

热门词条

更多>>
华为孟晚舟被扣:“五眼联盟”或是背后关键因素
▲资料图。图片来自网络。 北美当地时间12月5日,加拿大多家媒体相继报道称,中国企业华为技术有限公司副总裁兼...
携号转网通过短信即可办理
携号转网终于来了!在工信部的严格要求下,从12月开始,国内5个省天津、海南、江西、湖北、云南正式开始受理“携号...
如何实现Linux + Windows双系统启动
设置你的计算机根据需要启动 Windows 10 或 Ubuntu 18.04。 尽管 Linux...
用 Python 快速实现 HTTP 和 FTP 服务器
有时你需临时搭建一个简单的 Web Server,但你又不想去安装 Apache、Nginx 等这类功能较复杂...
美国断DNS根服务器,中国互联网就会瘫痪吗?
有一个广为流传的说法是“全球只有13台DNS根服务器,在这13台根服务器中,名字分别为“A”至“M”,其中...
九州彩票苹果版 >>所属分类 >> 网页设计    用户体验   

九州彩票登录: 关于浏览器兼容问题的解决办法

九州彩票苹果版 www.ddqsu.com.cn 标签: 浏览器 兼容

顶[0] 发表评论(0) 编辑词条

目前,最为流行的浏览器共有五个:分别是ie,Edge浏览器(属于微软),火狐,谷歌(chrome)Safari和Opera五大浏览器。


这五大浏览器分别有各自的浏览器内核,下面介绍以下各个浏览器的内核(包括一些国内的浏览器):


Trident内核:IE ,360,,猎豹,百度;


Gecko内核:火狐----------->这个浏览器内核是开源的浏览器内核,插件非常多,-------------->缺点:打开速度慢(加载flash插件)<-----额外介绍----->。


Webkit:遨游,苹果 ,symbian;


Bink:chrome浏览器,大部分国产浏览器最新版本都采用Blink;


由于这些浏览器的内核不相同,因此,他们的对编辑页面的一些属性的支持也有所不同,接下来,我就谈一谈在解决浏览器兼容方面的见解:


首先是关于innerText和textContent的问题的见解:


innerText 谷歌,火狐和IE8都支持

低版本的火狐不支持innerText

textContent在IE8中的结果是undefined;

textContent在谷歌和火狐中支持;


这些内容是必须知道的,也是以后解决兼容性问题的引子或者思路,同时也是基础。


在解决浏览器兼容性的问题上面,首先,可以通过获取浏览器的版本来判断这个浏览器是不是支持这个属性,但是这种办法非常的麻烦。

具体做法是:我要在一系列的信息中找到这个浏览器版本里面的具体是什么样的,然后用正则表达式去匹配,然后确定这个浏览器里面具体用的什么东西。这就是整个的内容,所以,相当的麻烦。

当然,获取浏览器版本的代码很简单,就一句话,一行代码,但是仅仅是为了判断这个浏览器是不是支持这个属性 ,是不是放在这里好像有点儿大材小用了。因此,就直接判断这个浏览器里面是不是支持这个属性就可以了。


为了解决这个不兼容的问题,我们可以编辑以下代码来解决上述问题:


 1 //任意元素都可以设置成文本内容----------因此把“任意”元素当成对象(element)传递到函数中
 2 
 3     //element---->任意元素 
 4     //text--->任意文本内容 
 5     function setInnerText(element,text) { 
 6     if(typeof (element.textContent)=='undefined'){//是IE8浏览器 
 7     element.innerText=text; 
 8        }else{ 
 9     //浏览器支持textContent这个属性 
10      element.textContent=text; 
11         } 
12     } 
13 
14 
15       //获取任意元素中的文本内容 
16     function getInnerText(element) { 
17     if(typeof (element.textContent)=="undefined"){ 
18     //如果浏览器不支持textContext这个属性则返回innerText的值 
19     return element.innerText; 
20         }else{ 
21     //如果浏览器支持textContext属性,则直接返回该属性的值 
22     return element.textContent; 
23         } 
24     } 


上述代码就可以解决innnerText和textContent在各个浏览器之间不兼容的问题(上述代码目前只在谷歌,火狐,IE8版本上面测试,以后还会在其他的浏览器的不同版本上面测试,测试结果还会不断的更新,尽请期待)。


上面介绍的内容只阐述部分属性在各个浏览器上面的差异,当然,还有其他的兼容问题存在,他们分别是:


(1)获取某个元素中的第一个子元素 


(2)获取某个元素中的最后一个子元素 


(3)获取某个元素的前一个兄弟元素 


(4)获取某个元素的后一个兄弟元素 


下面,我分别给出了相应的兼容性问题解决办法代码:

 1  1 //获取某个元素中的第一个子元素 
 2  2     function getFirstElement(element) { 
 3  3     if(element.firstElementChild){ 
 4  4     //如果浏览器支持这个属性就直接返回第一个子元素 
 5  5     return element.firstElementChild; 
 6  6     }else{ 
 7  7     //如果浏览器不支持这个firstElementChild属性,先获取传入进来的父级元素中的第一个子节点 
 8  8     var node=element.firstChild;//先获取这个节点 
 9  9     while (node&&node.nodeType!=1){//判断节点存在并且不是标签 
10 10     node=node.nextSibling;//继续找当前节点的下一个节点 
11 11     } 
12 12     return node; 
13 13     } 
14 14     } 
15 20     //下面这连个属性在各个不同的浏览器中显示的方式有所不同
16 21     //my$("uu").firstChild 
17 22     //my$("uu").firstElementChild 
18 23     
19 24     //获取某个元素中的最后一个子元素 
20 25     function getLastElement(element) { 
21 26     if(element.lastElementChild){ 
22 27     return element.lastElementChild; 
23 28     }else{ 
24 29     //获取当前元素的最后一个子节点 
25 30     var node=element.lastChild; 
26 31     while (node&&node.nodeType!=1){ 
27 32     node=node.previousSibling; 
28 33     } 
29 34     return node; 
30 35     } 
31 36     } 
32 
33 44     
34 45     //获取某个元素的前一个兄弟元素 
35 46     function getPreviousElement(element) { 
36 47     if(element.previousElementSibling){ 
37 48     return element.previousElementSibling 
38 49     }else{ 
39 50     var node=element.previousSibling; 
40 51     while (node&&node.nodeType!=1){ 
41 52     node=node.previousSibling; 
42 53     } 
43 54     return node; 
44 55     } 
45 56     } 
46 57     
47 58     
48 59     
49 60     //获取某个元素的后一个兄弟元素 
50 61     function getNextElement(element) { 
51 62     if(element.nextElementSibling){ 
52 63     return element.nextElementSibling 
53 64     }else{ 
54 65     var node=element.nextSibling; 
55 66     while (node&&node.nodeType!=1){ 
56 67     node=node.nextSibling; 
57 68     } 
58 69     return node; 
59 70     } 
60 71     } 

 

 

本文地址:九州彩票苹果版 //www.ddqsu.com.cn/doc-view-4933.html

TAGS:九州彩票苹果版 , 电脑技术 , 电脑知识 , 网站建设, 电脑百科, 网络营销 , 网站托管 , 硬件技术 , 网络技术 , 软件技术, 维修网点

附件列表


按字母顺序浏览:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

→我们致力于为广大网民解决所遇到的各种电脑技术问题
 如果您认为本词条还有待完善,请 编辑词条

上一篇重装win7系统的方法有哪些
下一篇如何保证网站的安全性?

0
1. 本站部分内容来自互联网,如有任何版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
2. 本站内容仅供参考,如果您需要解决具体问题,建议您咨询相关领域专业人士。
3. 如果您没有找到需要的百科词条,您可以到百科问答提问或创建词条,等待高手解答。

关于本词条的提问

查看全部/我要提问>>
  • 民生网——人民日报社《民生周刊》杂志官网 2018-12-12
  • 天津对口援建西藏昌都 一批项目签约落地 2018-12-11
  • 开房丢枪和“处女膜证明”事件中的清与浊 2018-12-10
  • 社交短视频:“抖”起来 沉下去 2018-12-10
  • 夏天穿件吊带连体裤 帅气美丽又清凉 2018-12-09
  • “蝇贪”扑面硕鼠村官难禁 基层“一把手”违纪多发 2018-12-08
  • 大豆自己种,芯片自己造 2018-12-07
  • 西咸新区四天18宗土地成交 土拍市场活跃三桥板块成焦点 2018-12-06
  • 南方医院乳腺科 乳腺疾病免费解答 2018-12-05
  • China Focus Dragon Boat Festival celebrated across China - Culture News - CQNEWS 2018-12-04
  • 广州拟提前实施 国Ⅵ排放标准 2018-12-04
  • 建立校际联盟教育共同体 促义务教育均衡发展 2018-12-03
  • 马英九参加佛教祈福活动相关新闻 2018-12-02
  • 回复@看着就想笑:那就你说了算 2018-12-02
  • 【巴州天气】最新巴州今天天气,实时提供巴州气温、空气质量、24小时天气预报、生活指数查询 2018-12-01
  • 763| 481| 957| 257| 148| 318| 897| 537| 428| 267|