我正在通过Google Chrome扩展程序为网站应用外部主题。徽标没有ID或类来调用它,我正在寻找一种方法来替换它与另一个图像。我觉得有可能根据它的大小来获取图像,但我不知道该怎么做。
答案 0 :(得分:3)
如果是<div id="something">
,你可以用
$("#something img:first").attr('src', 'http://new.src/img.gif');
答案 1 :(得分:1)
如果您知道链接图像的文件名是什么,则可以使用包含选择器进行选择。
http://api.jquery.com/attribute-contains-word-selector/
$("img[src~='cats.gif']");
答案 2 :(得分:0)
您应该可以致电$("img:eq(1)").attr("src", "file.png");
其中1
是图像的索引。正如waitinforatrain在下面指出的那样,这是从零开始的。来自API条目:
请注意,由于JavaScript数组使用基于0的索引,因此这些 选择者反映了这一事实。这就是$('。myclass:eq(1)')选择的原因 文档中的第二个元素是类myclass,而不是 首先。相反,:nth-child(n)使用基于1的索引来符合 到CSS规范。
有关详细信息,请参阅:eq selector in the JQuery API。
答案 3 :(得分:0)
您需要先选择一个靠近它的元素。
e.g。如果它是标识为example
的元素的第三个子元素:
$("#example :nth-child(3)").attr('src', '...');
或者,如果父元素没有ID,则必须使用直接子选择器。如果HTML是:
<div id="myDiv">
<div>blah</div>
<div><img src="..."/></div>
</div>
您的选择器将是:
$("#myDiv > div:nth-child(2) > img");