文章

JavaScript中click事件的拦截

当子控件处理点击事件后,父控件点击事件不允许在进行

在普通js中可以通过return false拦截

1
2
3
4
5
6
7
8
9
10
11
$('xxx').on('click', function() {

    xxx

    xxx

    ...

    return false;

});

当在函数中有出现’return false’时,表示事件处理阻止了默认的事件行为并停止了事件通过dom向上冒泡。

等价于

1
2
3
4
5
6
7
8
9
10
11
$('xxx').on('click', function(event) {

    ...

    ...

    event.preventDefault();//阻止事件的默认行为

    event.stopPropagation();//阻止该dom节点往上冒泡

})

如果是通过vuecli框架进行的,示例如下

1
2
3
4
5
<a href="javascript:void(0)"

onclick="javascript:event.preventDefault();event.stopPropagation();"

@click="$router.push('/admin/edit/'+articlebean.id)">编辑</a>

完成

本文由作者按照 CC BY 4.0 进行授权