我使用下面的代码像按钮一样使用我的页面,但问题是当我单击其他按钮时,此功能也有效,您有什么建议?document.body.onmousedown = function()
问问题
46 次
2 回答
0
jQuery 示例:
// Stop bubbling with event.stopPropagation(); on inner buttons
$("#selector").on('click',function(event){
event.stopPropagation();
// Run your code
});
$("body").on('click', function(){
// Run your code
});
于 2013-07-19T13:21:00.423 回答
0
您可以按照 Mooseman 的建议进行操作,但您必须添加.stopPropagation()
到所有页内处理程序中,所以这是另一种解决方案。
使用event.target来检测事件的来源,如下所示:
$('body').on('click',function(e){
if (e.target === document.body) {
alert('body clicked');
}
});
或使用节点名称:
if (e.target.nodeName.toUpperCase() === 'BODY') {
或 jQuery 方式:
if ($(e.target).is('body')) {
于 2013-07-19T13:41:23.433 回答