我正在用jquery处理一个列表项的点击:
$("#some_list li").click(function(event) {
// magic happens here
}
列表项如下所示:
<li><input type='checkbox'>Some text<span class='info'>(?)</span></li>
我想要有不同的行为,这取决于用户是在(?)内单击,还是在列表中的其他任何地方单击。我如何检测用户点击了哪个元素?
发布于 2010-05-03 08:57:03
像this
一样
$(this)
所有事件处理程序都在元素的上下文中运行,因此this
将引用触发事件的元素的原生DOM对象。
但是,这并没有确切地回答您的问题- this
将是处理程序注册的元素。
要找到被单击的实际元素(可以是this
的子元素),您应该编写$(e.target)
发布于 2010-05-04 12:24:53
我编写了一个简单的jquery代码来获取点击链接的数量。
var temp_str='';
$(document).ready(function(){
$('a').click(function(e){e.preventDefault();});
$(document).click(function(e){
if($(e.target).data('count')==undefined)
$(e.target).data('count',0);
$(e.target).data('count',$(e.target).data('count')+1);
$('a').each(function(i,item){if($(item).data('count')!=undefined)temp_str+=$(item).html()+" : "+$(item).data('count')+"<br>";});
$('#helper').html(temp_str);
temp_str='';
});
});
https://stackoverflow.com/questions/2755668
复制相似问题