【发布时间】:2020-05-16 08:15:32
【问题描述】:
我正在尝试将链接的href 定位到某个类,但是当链接包含子元素时,e.srcElement 的结果似乎取决于您单击链接的位置。
无论我点击链接的哪个位置,如何定位父 <a-tag 的 href?点击圆圈给我链接的实际href值,但点击F给我“未定义”。
HTML 元素
<a href="https://www.facebook.com/sharer/sharer.php?u=myshorturl" class="social-share">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 32 32" style="fill: #7f91a4;" class="at-icon at-icon-facebook"><g><path d="M22 5.16c-.406-.054-1.806-.16-3.43-.16-3.4 0-5.733 1.825-5.733 5.17v2.882H9v3.913h3.837V27h4.604V16.965h3.823l.587-3.913h-4.41v-2.5c0-1.123.347-1.903 2.198-1.903H22V5.16z" fill-rule="evenodd"></path></g></svg>
<span class="sr-only">Share This</span>
</a>
原版 JS
var shareButtons = document.getElementsByClassName("social-share");
Array.prototype.forEach.call(shareButtons, function (lnk) {
lnk.addEventListener("click", function (e) {
e.preventDefault();
e = (e ? e : window.event);
var t = (e.target ? e.target : e.srcElement);
console.log(t);
console.log(t.href);
});
});
【问题讨论】:
-
您可以访问回调中的
lnk变量... -
Doh'...我现在觉得自己很蠢!
-
每个人都会遇到这种情况,☺
标签: javascript html