防止对父div调用javascript回调

防止对父div调用javascript回调,javascript,jquery,google-chrome,callback,userscripts,Javascript,Jquery,Google Chrome,Callback,Userscripts,我正在开发一个用户脚本,它应该是跨浏览器兼容的,这也许可以解释为什么我没有以正常的方式做事。该脚本显示一个名为box的浮动div,它是jQuery对象。单击功能如下所示: box.click(function(event) { set_visible(false); }); set_visible函数只执行一个框。淡出(500) 在父div中,我创建了一个菜单,不使用jQuery,而是使用一组函数(我尝试使用jQuery重写此函数,但在使用数组函数时遇到了一些问题): 我的问题是,当我

我正在开发一个用户脚本,它应该是跨浏览器兼容的,这也许可以解释为什么我没有以正常的方式做事。该脚本显示一个名为box的浮动div,它是jQuery对象。单击功能如下所示:

box.click(function(event) {
    set_visible(false);
});
set_visible函数只执行一个
框。淡出(500)

在父div中,我创建了一个菜单,不使用jQuery,而是使用一组函数(我尝试使用jQuery重写此函数,但在使用数组函数时遇到了一些问题):


我的问题是,当我单击链接时,会显示“选项”菜单,但也会调用“父divs box.click”函数,当我不想单击时,该函数会将其隐藏。添加anchor.onclick函数后,您可以看到最后一个条目是
returnfalse但这并不能阻止.click事件向上传播到父div。有什么方法可以防止这种情况发生吗

您可能需要在链接单击处理程序中调用
e.stopPropagation()
,以防止单击传播到父对象。谢谢!我读了一点书,通过添加
vare=arguments[0]就可以做到这一点;e、 停止传播()到bing.onlick函数,这样就可以了。
box.click(function(event) {
    event.stopImmediatePropagation();
    event.stopPropagation();
    set_visible(false);
});
 function() { DisplaySlideMenu(true); }
box.click(function(event) {
    event.stopImmediatePropagation();
    event.stopPropagation();
    set_visible(false);
});