Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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
jquery事件帮助_Jquery_Events - Fatal编程技术网

jquery事件帮助

jquery事件帮助,jquery,events,Jquery,Events,我有这样的设置: <div id="container"> <div id="close">Close</div> </div> 问题是,当您单击close div时,它会触发两个事件。我猜这是因为第二个div覆盖了第一个div。因此,如何取消或停止第一个事件的触发?这可能会起作用: $("#container:not(#close)").live("click",function(){ changeTabs(

我有这样的设置:

    <div id="container">
       <div id="close">Close</div>
    </div>
问题是,当您单击close div时,它会触发两个事件。我猜这是因为第二个div覆盖了第一个div。因此,如何取消或停止第一个事件的触发?

这可能会起作用:

$("#container:not(#close)").live("click",function(){
   changeTabs();
});

$("#close").live("click", function(){
   closeTabs();
});
使用r.

这可能会起作用:

$("#container:not(#close)").live("click",function(){
   changeTabs();
});

$("#close").live("click", function(){
   closeTabs();
});
使用r.

签出

发件人:

停止将事件冒泡到 父元素,阻止任何父元素 处理程序不会被通知 事件

在您的情况下,这可能看起来像

$("#close").live("click", function(evt){
   evt.stopPropagation();
   closeTabs();
});
退房

发件人:

停止将事件冒泡到 父元素,阻止任何父元素 处理程序不会被通知 事件

在您的情况下,这可能看起来像

$("#close").live("click", function(evt){
   evt.stopPropagation();
   closeTabs();
});

我不知道为什么要使用div作为关闭单击事件,可以改用输入按钮吗

<div id="container">
       <input type="button" id="close" value="Close"/>
</div>

$("#container").live("click",function(){
    changeTabs();
});

$("#close").live("click", function(){
    closeTabs();
    return false;
});

$(“#容器”).live(“单击”,函数(){
changetab();
});
$(“#关闭”).live(“单击”,函数(){
closeTabs();
返回false;
});

我不知道为什么要使用div作为关闭单击事件,您可以改为使用输入按钮吗

<div id="container">
       <input type="button" id="close" value="Close"/>
</div>

$("#container").live("click",function(){
    changeTabs();
});

$("#close").live("click", function(){
    closeTabs();
    return false;
});

$(“#容器”).live(“单击”,函数(){
changetab();
});
$(“#关闭”).live(“单击”,函数(){
closeTabs();
返回false;
});

好,所以在closeTabs()函数下工作的方法返回false;这似乎解决了它

好的,因此在closeTabs()函数下工作的方法返回false;这似乎解决了这个问题,+1 spot-on,
return-false
将停止ProPagation和preventDefault(在jQuery事件处理程序中)。+1 spot-on,
return-false
将停止ProPagation和preventDefault(在jQuery事件处理程序中)。