![](/img/trans.png)
[英]Show/Hide Divs based on Anchor Href attr that matches the Hash in the URL
[英]Hide Anchor tag based on href URL
我想知道是否有可能隐藏指向特定URL的锚标记。 我知道可以使用JavaScript像这样隐藏id:
document.getElementById('someID').style.display = 'none';
<a href="#" id="someID" style="display: none">Check</a>
但是,假设我要根据网址示例隐藏所有锚定标记:www.example.com
<a href="www.example.com" id="someID" style="display: none">Check</a>
<a href="www.example2.com" id="someID" style="display: none">Check</a>
我想隐藏第一个锚标签,而不是第二个引用example2.com的标签
纯JavaScript而不是jQuery是否可行?
您可以使用document.querySelector
这样选择bu属性值。我没有使用jquery,仅使用了JavaScript。
document.querySelector("[href='www.example.com']").style.display = 'none';
<a href="www.example.com" id="someID" style="display:block">Check</a> <a href="www.example2.com" id="someID" style="display:block">Check</a>
只需遍历所有锚元素,然后检查其href
:
var anchors = document.getElementsByTagName('a'); for (var i = 0; i < anchors.length; i++) { if (anchors[i].href == 'https://example.com/') { anchors[i].style.display = 'none'; } }
<a href="https://example.com/" id="someID">Check</a> <a href="https://example2.com/" id="someID">Check</a>
你可以创造条件
var url = document.getElementsByTagName('a');
if (url.href = "www.example.com")
{
url.style.display = none;
}
这不是确切的代码。 我提供了示例。请尝试一下,让我知道。 这是单身。 如果你有很多标签,那么循环所有这些
您可以使用javascript来完成这项工作。 使用querySelector
获取具有相同id
所有元素。 然后循环ids
并比较href
链接值。
<script>
var elements = document.querySelectorAll("[id='someID']");
for(var i = 0; i < elements.length; i++) {
if (elements[i].getAttribute("href") === "www.example.com") {
elements[i].style.display='none';
}
}
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.