Jquery可单击正文,但不可单击内容

Jquery可单击正文,但不可单击内容,jquery,html,Jquery,Html,我想设置我的主页的body元素在点击式campaing中可点击(body中有彩色背景图像),但当我点击网站的任何地方时,当然会执行此点击。如何从我的内容(#页面)中删除此单击事件,以避免在内容中单击 HTML来源: <body> <div id="page">Content goes here. This div is centered, 980px width element </div> </body> 谢谢 DanyG像这样: $(

我想设置我的主页的body元素在点击式campaing中可点击(body中有彩色背景图像),但当我点击网站的任何地方时,当然会执行此点击。如何从我的内容(#页面)中删除此单击事件,以避免在内容中单击

HTML来源:

<body>
  <div id="page">Content goes here. This div is centered, 980px width element
  </div>
</body>
谢谢

DanyG像这样:

$('body:not(#page)').click(function() {
  window.open('http://example.com');
  return true;
});
像这样:

$('body:not(#page)').click(function() {
  window.open('http://example.com');
  return true;
});

body元素是所有pages元素的父元素。如果您单击页面的任何部分,则最终将单击正文。我不确定你能用这种技术做到这一点。如果我对这一点不正确,有人可以随意解释得更好。

body元素是所有页面元素的父元素。如果您单击页面的任何部分,则最终将单击正文。我不确定你能用这种技术做到这一点。如果我对这一点不正确,有人可以随意解释清楚。

您必须手动禁用对身体儿童的点击


您必须手动禁用身体儿童的咔哒声

给你:

$( 'body' ).click( function ( e ) {        
    if ( this === e.target ) {
        // the BODY was clicked directly; do your thing
    }
});
现场演示:

在上面的单击处理程序中,
this
关键字引用了作为主体元素的单击处理程序的“所有者”,而
e.target
属性引用了被单击的最顶层元素。如果两个引用引用同一个元素,则表示直接单击了BODY元素。

这里:

$( 'body' ).click( function ( e ) {        
    if ( this === e.target ) {
        // the BODY was clicked directly; do your thing
    }
});
现场演示:


在上面的单击处理程序中,
this
关键字引用了作为主体元素的单击处理程序的“所有者”,而
e.target
属性引用了被单击的最顶层元素。如果两个引用引用同一个元素,则表示直接单击了BODY元素。

单击
#页面
元素不应执行
窗口。打开
但在您的情况下会执行…单击
#页面
元素不应执行
窗口。打开
但在您的情况下会执行…谢谢,我尝试过这个,它在我尝试过的所有浏览器中都能正常工作。谢谢大家的回答。谢谢,我试过了,它在我试过的所有浏览器中都能正常工作。谢谢大家的回答。达尼格