首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查div并将类添加到相关div中?

检查div并将类添加到相关div中?
EN

Stack Overflow用户
提问于 2017-06-28 14:59:41
回答 1查看 55关注 0票数 0

我有什么

我正在制作一个交互式的步骤地图,并使用SVG处理绘图。我希望它在加载时检查X(一个rss提要)中有多少div,然后对每个div应用一个递增类。我是这样做的:

代码语言:javascript
复制
$(".gs-rss-feed .rss-item").each(function(i) {
  $(this).addClass("step" + (i + 1));
}

为了解释,我们称之为“RSS-步骤”。所以现在每个rss条目都有一个step+i类。

我还需要访问我的svg,每个条目都只有一个circle类,所以我也想增加它们(这些必须单独递增)。一次可以有更多的这些“地图步骤”而不是RSS项目。

代码语言:javascript
复制
$(".map .circle").each(function(j) {
  $(this).addClass("circle" + (j + 1));
}

此时,我应该有一个由23个圆圈组成的map div,名为circle+j,还有一个gs-rss-feed div,直至 23 items,名为step+i

我搞不懂

现在我有了这些div,我想检查每个circle是否有一个相关的circle。基本上,如果有circle-7,检查是否有step-7,然后向circle-7添加一个类。我可以用23个条件来实现这一点,但我更愿意在循环中找到一种方法来最小化代码。

到目前为止,我有这样的事情:

检查步骤长度是否大于0,然后检查该圆圈长度是否也大于0,如果为真,则添加filled__。

代码语言:javascript
复制
if($('.gs-rss-feed .step' + i.length > 0 && $('.map .circle') + j.length > 0 )){
    $('.bridge'+this).addClass('filled');
  }

我认为,最终我想找出如何检查一个类的i值是否等于另一个类的j值是有困难的。如果他们是平等的,那就等于说:

step1存在,circle1存在,将类filled添加到circle1

感谢你们能给我的任何帮助!谢谢:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-28 15:12:09

如果我正确理解,您必须使用eq()。eq()返回集合中选定元素的索引。eq(n)选择集合的第n个元素。

你写道:

step1存在,circle1存在,将类添加到circle1中

所以基本上你可以选择第n个元素。然后由jQuery来完成剩下的工作。如果没有找到匹配项,则不会添加任何类。

代码语言:javascript
复制
$(".gs-rss-feed .step").each(function(i){
    $(".map .circle").eq(i).addClass("filled");

});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44806141

复制
相关文章

相似问题

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