我有这个古老的代码,用CoffeeScript编写。 Mootools的:
pleaseDo:
"click:relay(#click-me)": @doSomething
doSomething: (event, element) =>
console.log event # shows event
console.log element # shows element
我试图将其重写为jQuery,我想知道在jQuery中获取点击元素的最佳方法是什么?
pleaseDo:
$("#click-me").on "click": @doSomething
doSomething: (event, element) =>
console.log event # shows event
console.log element # undefined
我知道我可以使用event.target
,例如:
doSomething: (event) =>
element = event.target
console.log event # shows event
console.log element # shows event
但我不喜欢它的样子。我可以以某种方式得到真正的"元素"作为doSomething函数的参数(就像在Mootools中一样)?
答案 0 :(得分:1)
您只需$(event.target)
或$(this)
。
答案 1 :(得分:1)
你可以这样做:
$('#click-me').on('click', function(){
console.log($(this));
});
这将返回jQuery对象,以便您可以像这样使用它
$('#click-me').on('click', function(){
$(this).text('hola');
});
否则,如果你想使用javascript这个
整个html对象 $('#click-me').on('click', function(){
console.log(this);
});