繁体   English   中英

element.event和element.setAttribute(event,handler)之间的区别

[英]difference between element.event and element.setAttribute(event,handler)

对于动态创建的元素,我注意到element.setAttribute(onClick,myFunction)在IE中无法正常工作,而element.onclick = myFunction适用于所有浏览器。 除了浏览器的区别外,是否还存在任何功能差异?

理论上,setAttribute接受一个字符串并将其分配给一个属性,然后将其映射到任何关联的DOM属性。 在IE 7及更低版本(以及在IE 7兼容模式和Quirks模式下的IE 8中),它直接为同名的DOM属性赋值(当属性需要字符串以外的其他内容时,将其区分大小写并且无效值)。

onfoo系列的DOM属性具有一个功能。

通常首选使用attachEventListener和friends,并使用抽象层(例如由YUI,jQuery等提供)来分配值。 这通常更容易。 此类库还倾向于包含解决内存泄漏相关错误的功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM