2011-03-30 55 views

回答

8

在事件处理程序中,this引用事件引发的DOM元素。

$("*").mouseup(function() { 
    var clickedElement = this; 
}); 

为了得到一个jQuery的元素,只是通过thisjQuery

:这将是很多很多更好的使用事件委托,而不是一个事件处理程序绑定到每个元素。你可以得到事件的起源与event.target

$(document).mouseup(function(event) { 
    var clickedElement = event.target; 
}); 

而进一步的说明:这不一定给你点击的元素,但在该鼠标按钮被释放的元素,它可以是不同的从按钮被按下的元素开始。您可能想绑定到click事件。


我也建议去read a jQuery tutorial where these basics are covered

2

使用这个。即:

$("*").mouseup( function() {  
    var clickedElement = this; //HTML DOM Element 
    var $clickedElement = $(this); //jQuery Wrapped HTML DOM Element 
}); 
4

如果你不想安装到每一个DOM元素的事件(我不建议)...

$(document).mouseup(function(event) { 
    var clickedElement = event.target; 
}); 

jsFiddle

这里,任何元素的事件都会一直冒泡到document,在那里它将被处理,并且启动事件的原始元素将在event.target中。

相关问题