首页 > 解决方案 > 如何通过点击孩子来避免点击父母?

问题描述

<div class='titlewrap'>
<div class='title'>lorem ipsum</div>
<div class='title'>lorem ipsum</div>
<div class='title'>lorem ipsum</div>
<br><br>
</title>

我想单独右键单击titlewrapvs title

js

$(document).on('contextmenu', '.titlewrap', function(e) {
    e.preventDefault();
    console.log('titlewrap');
});

$(document).on('contextmenu', '.title', function(e) {
    e.preventDefault();
    console.log('title');
});

点击title给出双控制台结果:
titlewrap
title

如何只title通过点击title并继续titlewrap点击获得titlewrap(下方空白处title

标签: javascript

解决方案


尝试像这样将 stopPropagation 添加到 .title 函数

$(document).on('contextmenu', '.titlewrap', function(e) {
    e.preventDefault();
    console.log('titlewrap');
});

$(document).on('contextmenu', '.title', function(e) {
    e.preventDefault();
    e.stopPropagation();
    console.log('title');
});

推荐阅读