js在浏览器下的区别小结(部分)
1.初始化数组:
document.write([1,2,3,].length);
IE:4//把数组中最后一个逗号后面的当做了undefined元素
FF、Opera、Safari:3
2.join数组原型:
当分隔符为undefined时,IE会使用undefined作为分隔符
例如:
var array=[1,2];
alert(array.join(","));
alert(array.join(undefined));
alert(array.join("-"));
IE:1,2
1undefined2
1-2
FF、Opera、Safari:1,2
1,2
1-2
3.valueof日期用法:
直接调用日期的valueof方法,IE将返回0,而其他将返回NaN
document.write(Date.prototype.valueof());
IE:0
FF、Opera、Safari:NaN
4.IE可直接使用event对象,其他不可以。
5.IE获取事件目标用srcElement,其他的用event.target
6.获取键盘值:
IE:event.keycode
非IE:event.which
7.获取指针的绝对位置
IE:event.X event.Y
其他:event.PageX event.PageY
8.通过id访问html元素
IE:可以使用eval("idname")或getElementById("idname");还支持将id作为document的属性名直接使用,其他不支持
非IE:getElementById("idname");
9.IE访问表单可以用document.form.item("itemname");或者document.formName.elements["elementName"];
非IE:document.formName.elements["elementName"];
10.删除节点:
IE:removeNode()或找到父节点,用removeChild()
非IE:找到父节点,用removeChild()
11.交换节点:
IE:支持swapNode私有方法交换HTML
12.IE:window.location或者window.location.href
非IE:window.location
13.访问父节点:
IE:obj.parentElement
FF:obj.parentNode
14.插入文本
IE:innerText
非IE:textContent
15.float值
IE:document.getElementById("idname").style.styleFloat="";
非IE:document.getElementById("idname").style.cssFloat="";
16.访问类样式
IE:getAttribute("classname");
非IE:getAttribute("class");
17.label和for属性
IE:getAttribute("htmlFor");
非IE:getAttribute("for");
18.获取鼠标指针位置
IE:event.clientX event.clientY
非IE:event.PageX event.pageY
19.可去区域窗口大小
IE:document.documentElement.clientWidth document.documentElement.clientWidth
非IE:window.innerWidth window.innerHeight
20.尺寸
IE:obj.style.height=imgobj.height
非IE:obj.style.height=imgobj.height+"px"