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事件处理程序中)。