$(".delete").click(function(event){ //ajax var product_div=$(this).parent().parent(); var pid=$(this).attr("item_key"); product_div.remove(); event.stopPropagation(); return false;
我用firebug调试了下,执行到这里的时候,remove不掉,然后div 就不停的hover var product_div=$(this).parent().parent(); var pid=$(this).attr("item_key"); product_div.remove(); 注:操作的数据全部是ajax获取的,然后对ajax获取的数据,动态hover,click等操作绑定
前加入$(".delete").unbind("click"); $(".delete").click(function(event){ //ajax var product_div=$(this).parent().parent(); var pid=$(this).attr("item_key"); product_div.remove(); event.stopPropagation(); return false;
$(".delete").click(function(event){
//ajax
var product_div=$(this).parent().parent();
var pid=$(this).attr("item_key");
product_div.remove();
event.stopPropagation();
return false;
});放在hover的外面。
事件处理过程中,阻止了事件冒泡,但不会阻击默认行为(它就执行了超链接的跳转)
2.returnfalse;
事件处理过程中,阻止了事件冒泡,也阻止了默认行为(比如刚才它就没有执行超链接的跳转)
还有一种有冒泡有关的:
3.event.preventDefault();
如果把它放在头部A标签的click事件中,点击“点击我”。
会发现它依次弹出:我是最里层---->我是中间层---->我是最外层,但最后却没有跳转到百度
它的作用是:事件处理过程中,不阻击事件冒泡,但阻击默认行为(它只执行所有弹框,却没有执行超链接跳转)
var product_div=$(this).parent().parent();
var pid=$(this).attr("item_key");
product_div.remove(); 注:操作的数据全部是ajax获取的,然后对ajax获取的数据,动态hover,click等操作绑定
$(".delete").click(function(event){
//ajax
var product_div=$(this).parent().parent();
var pid=$(this).attr("item_key");
product_div.remove();
event.stopPropagation();
return false;
});