2010-05-04 14 views

回答

5
var someObj = $("#foo").get(0); 
var fooClick = someObj.onclick; 

$("#bar").click(fooClick); 

,或者如果你想在这一条线:

$("#bar").click($("#foo").get(0).onclick); 
6

是否真的要求你从另一个对象的事件处理程序?这对我来说似乎不是一个好主意。更好的方法是定义处理程序,并将其分配给两个对象。

var clickHandler = function(e) { alert('click!'); }; 
$('#foo,#bar').click(clickHandler); 
+0

我同意这个建议+1,我的例子完全给出了他们要求的内容,但是他/她应该考虑只是将第一个地方绑定到同一个处理程序。 – David 2010-05-04 18:22:39

+0

谢谢,你的问题回答了这个问题:D – 2010-05-04 18:25:10

+0

没错,你们是对的......那会更好。不过,我试图保存一个点击事件的对象,从服务器端与这个点击事件呈现。所以,我无法控制它是如何呈现的,并且无法获得动态创建的javascript,直到它到达客户端:( – Polaris878 2010-05-04 18:28:42

3

只是增加了丹尼尔·施弗的回答(+1),你也可以内嵌的点击“处理”的定义,例如:

$("#foo, #bar").click(function() { 
    alert(this.id + ' was clicked.'); 
}); 

行为应该是一样的,但根据根据你的编码风格,你可能更喜欢这个(我是)。

相关问题