2011-11-01 207 views
1

我需要将元素的onclick事件从一个链接克隆到另一个链接。用javascript查找元素的onclick事件

<a id='foo' onclick='bar'> 

我需要一些JavaScript或jQuery将返回`酒吧'。

$('#foo').attr('onclick') 
    //returns 'undefined' 
+2

我得到的全功能返回一个字符串,而不是'undefined':http://jsfiddle.net/Z4gAp/。你使用的是什么浏览器? (我在Mac上使用Chrome) – Clive

+0

这对我来说很好:http://jsfiddle.net/purmou/73yns/ @Clive:矿井工作得很好,它返回“bar”。 – Purag

回答

1

使用DOM元素的原生.getAttribute方法。

我比较.attr('onclick')[0].getAttribute('onclick')

  • jQuery的方法返回function onclick(event) {bar;}(jQuery的1.5.2版,由堆栈溢出含税)
  • JavaScript方法返回"bar"

测试用例(复制&粘贴在控制台中):

$('<a id="foo" onclick="bar">')[0].getAttribute('onclick') 
+0

真的吗?这两种方法都给了我'bar' –

+0

@JohnGiotta我在Stack Overflow的控制台中测试了代码,其中包括jQuery版本1.5.2(使用'$().jquery'获取版本)。另见,这个小提琴:http://jsfiddle.net/3qkJr/ –

1

它在jQuery 1.6.4中返回条件很好,其中prop方法返回完整函数。解决方案是将您的jQuery升级到最新版本。

http://jsfiddle.net/n9UdN/