【发布时间】:2016-02-29 18:33:03
【问题描述】:
我构建了自己的 jquery 选项卡内容系统版本。基本标记如下。
<div class="row" id="toShow>
<div>
content
</div>
<div>
content
</div>
<div>
content
</div>
</div>
导航进入另一行
<div class="row" id="Links>
<ul>
<li>link</li><li>link</li><li>link</li><li>link</li>
</ul>
</div>
这是运行标签的js
$('.toShow .dslc-modules-area:not(:first)').addClass("hide");
$( ".links li" ).click(function() {
$( ".links li" ).siblings().removeClass('active');
$(this).toggleClass('active');
var identify=$(this).index();
$(".toShow .dslc-modules-area:not(:eq(identify))").addClass("hide");
$(".toShow .dslc-modules-area").eq([identify]).removeClass('hide').toggleClass("showme");
$('html,body').animate({scrollTop: $(".toShow").offset().top + 0}, 800);
如果我在第一个作品上有两个手风琴,并且假设它是一个迭代/每个问题?我的问题是,无需执行链接 1、链接 2 等,有没有办法让代码适用于每组手风琴?也就是说,为每一组#toShow 和#Links 运行这段代码?
【问题讨论】:
-
$( ".links li" ).siblings().removeClass('active')就像运行一个 while 循环,将i从1增加到1020 次,然后将其值设置为1。删除siblings()并使用$( ".links li" ).removeClass('active') -
@DanielBeck 您的编辑更正了作者帖子中可能导致问题不存在的错误,如果在这种情况下不存在,那么在将来。请避免对有问题的代码进行非空白更改。我回滚了编辑,如果您想重新应用语法更正,请继续。
-
@DJDavid98 鉴于提问者的说法,第一个有效,我认为拼写错误只是转录错误,但你的观点是完全正确的;今后我会牢记这一点。道歉。
-
@DanielBeck 这可能是真的,但一般来说,如果您认为标记可能已关闭,最好让 OP 自己修复他们的代码块,而不是做出有根据的猜测。或不基于上下文。
-
感谢您的提示,它仍然有效。
标签: jquery