var myObject = document.getElementById("header");var myAttribute = myObject.getAttribute("className");适用于IE8.0 以及 firefox的写法:
var myObject = document.getElementById("header");var myAttribute = myObject.getAttribute("class"); 另外,在使用setAttribute()设置Class属性的时候,两种浏览器也存在同样的差异。
setAttribute("className",value);
这种写法适用于IE8.0之前的所有IE版本,注意:IE8.0也不支持"className"属性了。
setAttribute("class",value);适用于IE8.0 以及 firefox。
【兼容处理】
方法一,两种都写上:
var myObject = document.getElementById("header");myObject.setAttribute("class","classValue");myObject.setAttribute("className","classValue"); //设置header的class为classValue方法二,IE和FF都支持object.className,所以可以这样写:
var myObject = document.getElementById("header");myObject.className="classValue";//设置header的class为classValue方法三,先判断浏览器类型,再根据浏览器类型采用对应的写法。
<!-- input对象访问1 --><input id="id" type="button" value="click me" ōnclick="alert(id.value)"/> 在Firefox中,按钮没反应,在IE中,就可以,因为对于IE来说,一个HTML 元素的 ID 可以直接在脚本中当作变量名来使用,而Firefox中不可以。
【兼容处理】尽量采用W3C DOM 的写法,访问对象的时候,用document.getElementById("id") 以ID来访问对象,且一个ID在页面中必须是唯一的,同样在以标签名来访问对象的时候,用document.getElementsByTagName("div")[0] 。该方式得到较多浏览器的支持。
<!-- input对象访问2 --><input id="id" type="button" value="click me" onclick="alert(document.getElementById('id').value)" />
function getAbsPoint(e){ var x = e.offsetLeft, y = e.offsetTop; while (e = e.offsetParent) { x += e.offsetLeft; y += e.offsetTop; } alert("x:" + x + "," + "y:" + y);}