OnClick事件 – 检查哪个是发件人
每次点击我的页面上的某些内容(无论是控件还是其他内容)时,是否有办法调用一个事件,然后在该函数中检查哪个是发件人?
像这样?
$(document).click(function(e) { console.log(e.target); });
这将捕获文档中的所有点击,并记录事件开始的节点。 这是一个大锤的方法,但没有理解问题,这是我能做的最好的。
那么你可以这样做:
$(function(){ $('*').click(function(){ var $sender = $(window.event.target); }); });
但是,你会想到各种各样的propegation问题,而且我不知道所有dom元素是否都响应.click()
事件。
最好用类名标记您想要点击的所有项目,因此它变为:
$(function(){ $('.clickable').click(function(){ var $sender = $(window.event.target); }); });
你想要完成什么?
您可以识别被点击的项目。 以下脚本将处理页面中的所有标记。
$(function(){ $("a").click(function(e){ // e.preventDefault(); prevent default behaviour if needed alert("Invoked from "+$(this).attr("id")); }); });
工作样本: http : //jsfiddle.net/yBfUq/2/
确实,虽然我想不出任何理由你会想要这样做吗?
$(document).ready(function() { $("body *").click(function(event){ alert($(this).attr('id')); }) });
这会提醒身份证,但您可以根据“发件人”进行任何您想要的操作。