IE 8及以下版本对属性和属性进行了类似处理。
他们的意思是一样的吗?
答案 0 :(得分:0)
What is the difference between attribute and property?对语义进行了相当多的讨论......以及术语的不同语言用法......
答案 1 :(得分:0)
@all认为他们是一样的:
NO。
HTML元素的属性和属性不相同。
从DOM的角度来看: 属性是私有变量,属性存储在存储为HTML元素的childNode的NamedNodeMap中
从JavaScript的角度来看(实施): var elem = document.getElementById(“ID”);
elem.prop = somevalue; //访问属性
elem.getAttribute( “的attributeName”); //访问属性:getters elem.setAttribute( “的attributeName”, “值”); //访问属性:setters
有关实施细节,请参阅我的其他答案。
答案 2 :(得分:-1)
DOM中的属性和属性不相同。但是,在IE 8及以下版本中进行了类似的处理。
我遇到了跨浏览器兼容性的问题。
问题:自定义属性作为IE4的HTML4 / JavaScript中的属性进行访问。需要使HTML与Chrome,Safari和IE9兼容。
解决方案:可以迭代元素以检查自定义属性并将其添加为属性。
示例代码:
var propertyName = obj.attributes [index] .nodeName; //(属性名称不区分大小写) obj [propertyName] = value; //(检查obj.customAttribute的实现)
提示: 与IE 8及更低版本不同,IE 9及更高版本已解决了该问题,并以不同方式处理属性和属性。