Javascript 如何制作可点击的横幅

Javascript 如何制作可点击的横幅,javascript,jquery,Javascript,Jquery,我有一个div,里面有一个链接。当我点击一个div时,它会打开链接(例如:google.com),但当我点击按钮时,它会打开另一个链接 <div class="sc-banner"> <a href="#" target="_blank">Button</a> </div> 问题是因为a中的click事件正在向上传播DOM,并在div上触发click处理程序 你可以用几种方法解决这个问题。首先,检查div处理程序中的事件目标: $(".s

我有一个
div
,里面有一个链接。当我点击一个div时,它会打开链接(例如:google.com),但当我点击按钮时,它会打开另一个链接

<div class="sc-banner">
    <a href="#" target="_blank">Button</a>
</div>

问题是因为
a
中的click事件正在向上传播DOM,并在div上触发click处理程序

你可以用几种方法解决这个问题。首先,检查
div
处理程序中的事件目标:

$(".sc-banner").click(function(e) {
  e.stopPropagation();
  if (e.target.tagName !== 'A')
    window.open('http://google.com', "_blank");
});
或者,您可以将另一个事件处理程序添加到调用
stopPropagation()
a


您已经显示了div的click处理程序,那么问题是什么?问题是当我单击按钮时,链接(google)同时打开。如何正确实现?这样链接就可以单独工作了吗?试着在按钮上添加点击处理程序,同时添加另一个链接。我想你正在寻找这个感谢完美的工作!)
$(".sc-banner").click(function(e) {
  e.stopPropagation();
  window.open('http://google.com', "_blank");
});

$(".sc-banner a").click(function(e) {
  e.stopPropagation();
});