Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
选择不包含类的Div-jQuery_Jquery_Jquery Selectors_Html - Fatal编程技术网

选择不包含类的Div-jQuery

选择不包含类的Div-jQuery,jquery,jquery-selectors,html,Jquery,Jquery Selectors,Html,我一直在尝试捕捉用户单击我菜单中不包含任何其他类型内容/类的部分时发生的事件 菜单本身分为两个部分,两个部分都是浮动的(一个在右边,另一个在左边),我只是想抓住在父div(菜单)内部和浮动div外部发生单击的时间 标记: <div id='test'> <div class='t1'> </div> <div class='t2'> </div> </div> 示例: <div id

我一直在尝试捕捉用户单击我菜单中不包含任何其他类型内容/类的部分时发生的事件

菜单本身分为两个部分,两个部分都是浮动的(一个在右边,另一个在左边),我只是想抓住在父div(菜单)内部和浮动div外部发生单击的时间

标记:

<div id='test'>
    <div class='t1'>
    </div> 
    <div class='t2'>
    </div>
</div>
示例:

<div id='test'>
    <div class='t1'>
    </div> 
    <div class='t2'>
    </div>
</div>


我主要想知道,与另一种检查单击内容并确定是否单击了正确区域的方法相比,通过jQuery使用选择器是否有可能做到这一点。(但这两种方法都可以接受。)

您可以为包含的元素添加处理程序:

$('#test *').click(function(e) {
  e.stopPropagation();
});
这将防止这些事件上升到顶部

或者,您可以检查事件目标是否为正确的元素:

$("#test").click(function(e) {
  if (this === e.target) alert("success!");
});

e.target
进行比较。如果它们相同,则处理事件的元素将与事件的起源元素相同

$('#test').click(function(e)
{
    if (this === e.target) {
        alert('#test itself clicked');
    } else {
        alert('some child element was clicked');
    }
});

.

哈哈,你的比我的早:-)太棒了!我想应该是这样简单的事情——非常感谢!谢谢你,尖头!工作得很有魅力!