我的页面上有一些图像,但它们都是相同的图像。我想知道如何用jQuery改变它们。以下是我目前的设置。
我为每张图片添加了image-1
,image-2
等ID,并使用
$("#image-1").attr({src:"..."});
$("#image-2").attr({src:"..."});
有没有办法可以将我的ID设置为myTag
,然后为每个具有该ID的图像更改图像src?因为如果我在现在的方法中这样做,它只会改变带有该id的第一张图像。
答案 0 :(得分:10)
您需要使用class
而不是id
。如果你使用class="imageClass"
并在jQuery中引用class
它应该可以工作。
$(".imageClass").attr("src", "imagename");
这背后的原理是id应该是唯一的,而类应该用于引用多个标签。您可以在同一个标记上拥有ID和类,但ID应该是唯一的。例如,如果您希望所有标题都为绿色,则可以执行以下操作:
<h1 class="green-header">Text</h1>
但是如果您想更改站点中的一个div以使文本居中,则可以执行以下操作:
<div id="center-text">Text</div>
答案 1 :(得分:1)
尝试^ attribute-starts-with-selector
$('img[id^="image-"]').prop("src", "imagename");
<小时/> 阅读.prop() vs .attr()
答案 2 :(得分:0)
试试这个:
$("img[id*='image-']").attr({src:"..."});