javascript - 停止多个内联函数JS的事件传播

标签 javascript events inline stoppropagation

我有这种类型的代码:

<button onclick="fn1();fn2();fn3()">Clic</button>

我在 fn1 中测试了一些内容,如果它是真的,我不希望调用 fn2 和 fn3。我在 fn1 中使用了 event.stopPropagation() (以跨浏览器的方式并将事件传递给函数),但无论如何都会调用其他函数。

有人可以帮忙吗?

最佳答案

这不是一个好的做法,但有办法。您可以抛出自己的异常来停止执行。我再说一遍,这不是一个好习惯

<script type="text/javascript">
function one(){
    var a = 1;
    console.log('one');
    if(a == 1){
        throw new RangeError("Sorry, but you are too young for this movie");
    }
}
function two(){
    console.log('two');
}
</script>

<button onclick="one();two();">Click me.</button>

关于javascript - 停止多个内联函数JS的事件传播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25936586/

相关文章:

javascript - 美国邮政编码验证

javascript - 删除类后的事件委托(delegate)

javascript - 函数 _.bind() 不会绑定(bind)对象

node.js - Socket.io 事件列表

html - 如何使用内联 CSS 将图像应用于背景?

Node.js Jade : Nested 'for' loop not working

javascript - 如何查找正则表达式的部分 - 整数?

javascript - swfobject、FB.ui 回调、AS3 ExternalInterface 和 IE 无法正常工作

javascript - 如何使用客户 JavaScript 在表格列表中创建

jquery - css - jQuery 使用一个元素到另一个元素的内联样式,可以使用类值来实现,但需要使用内联值