jquery attr(“onClick”) – ie和ff

使用jquery,我想从A标签的onClick属性中获取javascript。

 

在Firefox中: alert($('a').attr("onClick"))显示: alert("boo")

在IE 6/7中: alert($('a').attr("onClick"))显示: function anonymous(){alert("boo");return false;}

如何使用jquery在IE 6/7中只检索javascript而不是包装函数? (或普通的JavaScript)?

弗兰科

如何在IE 6/7中只检索javascript而不是包装函数

你通常根本不想依赖于内联事件处理程序的字符串值(实际上你通常应该完全避免使用内联事件处理程序属性来支持从脚本绑定到函数 – 特别是如果你使用的是jQuery,这种方法是常态)。 但是如果必须,解决方法是DOM方法getAttributeNode

 var link= $('a')[0]; // or whatever alert(link.getAttributeNode('onclick').value); 

Internet Explorer <8具有完全破坏的setAttribute和getAttribute实现,它使用给定名称而不是属性来处理属性

我不知道有什么工作要做。

比添加onclick属性更好的是代表IE6 / IE7这个解决方案:

 $("a").click(function () { .. anything to do .. }) 

你有没有尝试过 :

 alert($('a').attr("onclick")) 

在XHTML中,onClick不是正确的版本。

浏览器安全:

 jQuery('a')[0].getAttribute('onclick');