[英]How to search within an array?
我有这个函数,它假设从页面获取所有的标签,我正在尝试这些链接中的所有锚点,但我一直得到Object [对象HTMLAnchorElement]没有方法错误,我尝试过使用split ,搜索和indexOf,但一切都给了mes相同的错误,我做错了什么?
我知道我得到了所有的标签,第一个警报返回他们的总数。 这就是我所拥有的:
// get all the link tags from the page
var a = document.getElementsByTagName('a');
//alert(a.length)
for (var i = 0; i < a.length; i++)
{
// check which links have an anchor within them
if(a[i].search("#") > 1)
{
alert("yes");
}
else
{
alert("no");
}
}
Anchor元素有一个你可以使用的href
属性:
if (a[i].href.search("#") != -1)
您需要检查href属性,如下所示:
if(a[i].href.search("#") > -1)
NB索引从0开始,因此您需要检查search()
的结果是否大于-1
您也可以在不使用选择器循环的情况下执行此操作。
var aWithAnchors = document.querySelectorAll('a[href*="#"]');
然后你可以获得所有链接:
console.log([].map.call(aWithAnchors, function (link) {
return link.href;
}));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.