Onclick事件覆盖与firebug

时间:2009-11-23 14:49:37

标签: javascript firebug

我添加了一个onclick事件,它打开一个新的标签/页面,到一个已经有一个动作的按钮(我不知道哪个动作导致它没有在源中显示,或者可能是一个表单提交动作)。

Button最初还在新标签页面中打开一个页面,我想要做的是在我的onclick属性执行后启动一些函数,这将停止执行并且不会发生默认页面打开,只会加载我的页面。

有什么可以做的吗?

4 个答案:

答案 0 :(得分:0)

听起来事件在你处理之后冒泡了。要阻止这种情况发生,请在处理程序的末尾添加event.cancelBubble = true

答案 1 :(得分:0)

使用jQuery,您可以这样做:

$('button').click(function() {

  //do something

  return false; // stop the event from propagating
});

答案 2 :(得分:0)

尝试通过onclick事件调用您的函数返回false。这将导致按钮的任何现有操作被覆盖

答案 3 :(得分:0)

如果使用'onclick ='设置处理程序,您只需重写onclick属性。

如果使用addEventHandler或attachEvent将处理程序添加到元素,则可以使用removeEventHandler或detachEvent删除它,使用与设置它相同的参数。

如果您不知道设置器,或者它使用匿名功能,则无法将其删除。

您可以使用没有事件的副本替换元素,并在新元素上设置自己的元素。

(cloneNode不应该克隆事件,但有时在某些浏览器中会这样做。)

相关问题