javascript - 阻止事件冒泡到父级

标签 javascript jquery html css

我有以下情况

<div id="parent">
    <div id="child"></div>
</div>

还有一些CSS

div:active { background-color: green }

有没有更好的方法,当 #child 被点击时,只有 #child 被激活 。我试过了

$('#child').click(function (e) {
    e.stopImmediatePropagation();
    e.stopPropagation();
    e.preventDefault();
});

但无论我做什么,#parent 也会激活。请注意,我无法更改 CSS!

无论如何,我看到的唯一解决方案是添加一个 .active 类而不是使用 :active 但我希望它可以通过事件传播以某种方式完成。

DEMO

最佳答案

来自CSS spec :

The parent of an element that matches :active also matches :active.

所以不,似乎没有办法让父级匹配:active。您要么必须使选择器更具体,要么不使用 :active

关于javascript - 阻止事件冒泡到父级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30738903/

相关文章:

javascript - JQuery:无法从表列中获取元素

javascript - 在 Chrome 和 Firefox 的 svg 对象内水平对齐 svg 图像

javascript - 无法处理的实体错误(ajax)(laravel 5.2)

javascript - 在 AngularJS 上使用下拉菜单传递参数

javascript - 在javascript es6中,如何在不使用类名的情况下调用构造函数方法?

javascript - 无法使用 jquery 调用 javascript 附加类

PHP 错误 "Can not modify header information"

javascript - 具有最小副作用的非 Canvas 移动导航

html - 使用 CSS 重新排列 html 表格

Javascript - 如何将图像数据(字节数组)添加到多部分 POST 请求