我有此代码:

<script>
    var link = document.getElementsByTagName("a:not(#)");

    for (var i = 0; i < link.length; i++) {
        link[i].href = link[i].href.replace(/(\?)utm[^&]*(?:&utm[^&]*)*&(?=(?!utm[^\s&=]*=)[^\s&=]+=)|\?utm[^&]*(?:&utm[^&]*)*$|&utm[^&]*/gi, '$1');
    }
    </script>


代码应在网站上查找所有a标签,并替换所有UTM。到目前为止工作。但是,现在网站上的锚标记已损坏。

在站点的代码中,链接如下所示:

<a href="#newspaper" class="someclass">Newspaper</a>


当我将鼠标悬停在链接上时,它显示出:

https://www.mysite.or/#newspaper


如何排除这些锚标签?

最佳答案

此代码返回所有链接,但不包括锚点

document.querySelectorAll('a:not([href*="#"])');

关于javascript - 排除网站 anchor 链接javascript,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59074341/

10-09 16:42