JS兼容性问题汇总

1.

document.body.onmousewheel这个事件

在火狐下要这样写document.body.addEventListener("DOMMouseScroll", function(event) {});

并且非火狐用e.deltaY判断方向,火狐用下e/detail判断方向

2.

fadein、fadeout在iphone/safari会出现闪烁,solve it with css 3

3.

ie不支持标准的capture bubble事件模型,故attachEvent只有两个参数

但标准方法addEventListener有3个参数,这就不得不提捕获冒泡和非捕获冒泡的游览器差异了

true 是捕获阶段执行绑定的函数 false 是bubble阶段执行绑定的函数

其实就是父子div同时发生事件时,先做谁的问题

在这里简述一下capture-bubble模型

dom事件发生了,警察从dom的root出发去capture这个事件确切发生的最内元素

T.T国际警察

比如这个罪犯在杭州

那么国际警察机会先进入中国,顺便看看同一时刻中国有没有案件发生

再去浙江看看

最后跑到杭州执行案件

如果band的时候,第三个参数是true,那么沿路看到案子就给办了

如果第三个参数是false,那会就回头再收拾那些罪犯

但是ie里不是国际警察在办事

是本地的条子在办事T.T

所以直接就抓到了,就是冒泡了

这篇如果内容多了以后可能需要被整理成好几篇

时间: 2024-11-05 18:27:52

JS兼容性问题汇总的相关文章

【转】浏览器兼容性问题汇总

浏览器兼容性问题汇总 1:margin-left在IE6不生效(复现条件:块状元素.浮动.margin-left) ---------解决方法:http://www.seostudying.com/1233.html 2: position:fixed 在ie6 .ie7(quirk) . ie8(quirk)下被当成错误处理.-----------解决方法:http://blog.sina.com.cn/s/blog_106f3d140100yaok.html 解决思路:用 _position

浏览器兼容性问题汇总

# 浏览器兼容性问题汇总 ## 问题1 ### first-child ## <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <style> div p:first-child { color: red; } </style> </head> <

IE 和Firefox的js兼容性总结

IE 和Firefox的js兼容性总结 12 August 2010 11:39 Thursday by 小屋 标签: 浏览器 方法 属性 IT 写法 一.函数和方法差异 1 . getYear()方法 [分析说明]先看一下 以下代码: var year = new Date().getYear();document.write(year); 在IE中得到的日期是"2010",在Firefox中看到的日期是"110",主要是因为在 Firefox 里面 getYea

node.js相关资料汇总

node.js API 英文原版 http://nodejs.org/api/all.html node.js API 中文翻译 http://nodeapi.ucdok.com/#/api/ node.js API 中文翻译下载 http://download.csdn.net/detail/bad19876414641/4608699 javascript API 下载 http://pan.baidu.com/share/link?shareid=1669066489&uk=4261436

js兼容性问题

javscript 浏览器兼容性问题: scrollTop = document.documentElement.scrollTop || document.body.scrollTop; scrollLeft = document.documentElement.scrollLeft || document.body.scrollLeft; 整理中.... js兼容性问题

js兼容性汇总

1.ie8不支持getElementsByClassName()方法 [解决办法] if(!document.getElementsByClassName){ document.getElementsByClassName = function(className, element){ var children = (element || document).getElementsByTagName('*'); var elements = new Array(); for (var i=0;

【Javascript】 IE8兼容性问题汇总

本章是在网页开发过程中所碰到的IE8兼容性问题做一个汇总. 尼玛太坑了,屡次踩坑,总是没记性.而且更坑的是IE8的开发者工具太难用了,想调试都调试不出来. 不得已只好记录下来,下次出问题了好方便排查. JS脚本中,必须遵循以下规则,否则都将导致JS脚本在IE8 错误. 1.所有js脚本的语句结束之后,必须以分号结束. 2.数组(Array)对象声明或赋值时,注意不能有多余的逗号(,)如: var arrNum = [1,2,4,]; var arrStr = [ {key:1}, {key:2}

js兼容性大全

js有个第二定律好的属性/选择器一定不兼容/* 获取类名通用代码*/function getClassName(){ if(document.getElementsByClassName){ dosoming....... }else{ getClassName(className); } function getClassName(className){ var aTag = []; var allTag = document.getElementById(id).getElementsByT

js兼容性

JS的兼容性:1.ev||event2.addEventListener||attachEvent3.document.documentElement.scollTop||body4.getElementsByClassName5.setCapture6.firstChild||element7.localStorage8.srcElement||target9.fromElement||relatedTarget10.currentStyle||getComputedStyle11.preve