首页 > 解决方案 > 如果包装在标签中,则触发链接

问题描述

标签: javascript

解决方案


在第一个事件处理程序中,您引用的是“目标”而不是“当前目标”

e.target表示被单击的确切元素 - 在您的情况下<em/>- whilee.currentTarget表示事件处理程序附加到的元素,这是您的href值所在的位置。

我会将e.target第一个事件处理程序中的两个引用更改为,e.currentTarget并且事情应该按预期工作。

  $('.modal-button').click(e => {
    e.preventDefault();
    $(e.currentTarget).closest('.modal').add('body').addClass('open');
    openModals.push($($(e.currentTarget).attr('href')).show());
  });

https://jsfiddle.net/q7o6f9su/


推荐阅读