【问题标题】:Javascript- Cancel parent elements onmouseup event?Javascript-取消父元素onmouseup事件?
【发布时间】:2009-07-07 13:56:25
【问题描述】:

所以我有一个父级,它定义了一个隐藏/显示表格的 onmouseup 事件。问题是我希望能够嵌套可扩展/可折叠的表,但是当我单击一个嵌套的表时,它会为父级触发事件并折叠所有内容。我可以在 javascript 中做一些无聊的事情,比如假设嵌套事件将首先触发,然后取消父事件,但这似乎有点 hacky。有没有办法从子元素声明不应该为此事件触发任何父元素?

【问题讨论】:

    标签: javascript


    【解决方案1】:

    我认为你不能在元素上声明那种东西 但正如您暗示的那样,您可以在孩子的处理程序中尝试:

    e.stopPropagation()
    

    事件在哪里?或返回假;应该有相同的效果,但我似乎记得有一个问题(也许 IE 不起作用,但这可能只是我遗漏的另一个因素)

    【讨论】:

    • 返回 false 会阻止执行默认行为(例如单击表单内的提交按钮)。很好的解决方案,但我认为返回 false 与他正在寻找的内容没有任何关系。 +1
    【解决方案2】:

    您是否可以遍历所有父母并重新定义其onMouseUp 属性以不执行任何操作?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-12-04
      • 1970-01-01
      • 1970-01-01
      • 2014-01-19
      • 1970-01-01
      • 2019-10-29
      • 2021-03-21
      相关资源
      最近更新 更多