0

我将一个新的附加div到所有图像链接,如下所示:

var images = document.getElementsByTagName('img');
for (var i = 0; i < images.length; i++) {    
    var divLink = document.createElement("div");
    divLink.style.position = "absolute";
    divLink.style.top = "10px";
    divLink.style.right = "10px";
    divLink.style.zIndex="1";
    divLink.style.fontSize = "20px";
    divLink.style.backgroundColor = "black";
    divLink.style.color = 'white';
    divLink.innerHTML = linkCount;
    images[i].parentNode.insertBefore(divLink, images[i] );
}

上面的代码会将新的 divLink 属性添加到以下 HTML:

<li>
<div>
<a title="Free Shipping" href="http://www.url.com/cp/School-Uniforms" onclick="s_objectID="http://www.url.com/cp/School-Uniforms/">
<img width="100" height="100" border="0" src="http://i9.url.com/images/Site/Apparel.jpg" alt="Free Shipping">
</a>
</div>
<div class="cat1">Apparel</div>
<div class="cat2">
<a title="Free Shipping" href="http://www.url.com/cp/School-Uniforms" onclick="s_objectID="http://www.url.com/cp/School-Uniforms">Free Shipping</a>
</div>
</li>

我现在需要为所有不属于图像的文本链接附加一个类似的元素。我知道我可以使用以下方法找到所有链接:

var links = document.querySelectorAll("a");

如何分离具有图像的链接,并且只选择不属于图像的链接,以便我添加的属性不会被添加到带有图像的链接中两次。

4

1 回答 1

0

向非“图像链接”添加一个类,.standardLink并让它们使用:

var links = document.querySelectorAll(".standardLink");

或者使用 jQuery:

var links = $(".standardLink");

然后遍历数组做任何你想做的事情:

for (i in links){
    doSomethingToThisLink(links[i]);
}
于 2013-06-19T17:09:32.980 回答