我希望对div的子元素进行计数,并根据结果使用JS修改CSS。
下面是我的代码:
<div id="images" class="images">
<img id="imageItem" class="imageItem" src="http://www.foreclosurelistings.com/images/resources/los-angeles-ca/living-los-angeles.jpg" alt="Scrap image" />
<img id="imageItem" class="imageItem" src="http://www.foreclosurelistings.com/images/resources/los-angeles-ca/living-los-angeles.jpg" alt="Scrap image" />
</div>JQuery:
count = $("#images img").length;
alert(count); //this alert has to be removed when if statement works
if (count == 2) {
document.getElementById(imageItem).style.width = '200px';
}当我用警告框显示count变量的结果时,它是正确的,因此JQuery正确地对子元素( div图像中的图像)进行了计数。但是if语句不起作用。
我的代码应该是什么样子才能让它工作?
发布于 2013-08-01 19:59:46
类id应该是唯一的(删除它,因为您已经有一个类了)..use
使用jquery的
var count = $("#images img.imageItem").length;
if (count == 2) {
$('.imageItem').css({width :'200px'});
}解释
$('.imageItem') >选择类为imageItem的元素..因此,它会同时选择这两个图像。.css({width :'200px'}); >将Css属性添加到所选元素。所以这增加了两个图像的宽度。然后一下!看你有了它..:)
发布于 2013-08-01 20:01:16
首先定义不同的镜像id
if (count == 2) {
$('.imageItem').css('width', '200px');
}发布于 2013-08-01 20:06:01
好的,第一个想法不是使用相同ID的2个div,而是使用智能ID
所以我建议你找出你有多少"imageItem“,以及你在某个空间中传播了多少
这是一个大胆的猜测,所以我的建议是:
HTML:
<div id="images" class="images">
<img id="imageItem_1" class="imageItem" src="" />
<img id="imageItem_2" class="imageItem" src="" />
</div>JS:
count = $("#images img").length;
alert(count);
for(var i=1, i<=count; i++) {
$("#imageItem_" + i).css("width ", "200px");
}https://stackoverflow.com/questions/17993437
复制相似问题