首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >对子元素进行JQuery计数,并使用if语句修改CSS

对子元素进行JQuery计数,并使用if语句修改CSS
EN

Stack Overflow用户
提问于 2013-08-01 19:58:03
回答 5查看 654关注 0票数 0

我希望对div的子元素进行计数,并根据结果使用JS修改CSS。

下面是我的代码:

代码语言:javascript
复制
<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:

代码语言:javascript
复制
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语句不起作用。

我的代码应该是什么样子才能让它工作?

EN

回答 5

Stack Overflow用户

发布于 2013-08-01 19:59:46

类id应该是唯一的(删除它,因为您已经有一个类了)..use

使用jquery的

代码语言:javascript
复制
  var count = $("#images img.imageItem").length;

  if (count == 2) {
    $('.imageItem').css({width :'200px'});
  }

解释

$('.imageItem') >选择类为imageItem的元素..因此,它会同时选择这两个图像。.css({width :'200px'}); >将Css属性添加到所选元素。所以这增加了两个图像的宽度。然后一下!看你有了它..:)

票数 3
EN

Stack Overflow用户

发布于 2013-08-01 20:01:16

首先定义不同的镜像id

代码语言:javascript
复制
if (count == 2) {
    $('.imageItem').css('width', '200px');
 }
票数 1
EN

Stack Overflow用户

发布于 2013-08-01 20:06:01

好的,第一个想法不是使用相同ID的2个div,而是使用智能ID

所以我建议你找出你有多少"imageItem“,以及你在某个空间中传播了多少

这是一个大胆的猜测,所以我的建议是:

HTML:

代码语言:javascript
复制
<div id="images" class="images">
    <img id="imageItem_1" class="imageItem" src="" />
    <img id="imageItem_2" class="imageItem" src="" />
</div>

JS:

代码语言:javascript
复制
count = $("#images img").length;
alert(count);
for(var i=1, i<=count; i++) {
    $("#imageItem_" + i).css("width ", "200px");
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17993437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档