我发现标签会阻止事件在DOM中向下传播。举个例子:如果你单击红色按钮,文本应该记录,但如果你按它们重叠的位置,你将只获得链接行为。 ¿有没有办法强制将事件传播到底部?
var btn = document.querySelector(".btn");
btn.addEventListener("click", function() {
console.log("btn clicked");
});
.btn {
background: red;
color: white;
width: 200px;
text-align: center;
padding: 1em;
}
a {
background: rgba(0, 200, 100, 0.3);
display: block;
width: 150px;
height: 150px;
position: absolute;
top: 0;
left: 100px;
z-index: 99;
}
<div class="btn">Press me</div>
<a href="http://google.com" target="_blank"></a>
似乎该代码段阻止了链接触发,但是在此处进行测试并且您会看到它:http://codepen.io/vandervals/pen/wMNKOG
答案 0 :(得分:0)
是的,将a
放入.btn
。
<div class="btn">
Press me
<a href="http://google.com" target="_blank"></a>
</div>