避免锚标记停止点击传播

时间:2016-02-12 11:36:12

标签: javascript html events

我发现标签会阻止事件在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

1 个答案:

答案 0 :(得分:0)

是的,将a放入.btn

<div class="btn">
    Press me
    <a href="http://google.com" target="_blank"></a>
 </div>