【发布时间】:2014-09-26 12:45:56
【问题描述】:
我在 .list1 和 .list2 uls 上有多个元素,.list2 不可见,.list1 中的元素触发 .list2 中的元素。我不知道会有多少元素,所以我想对一些带有点击事件的 jQuery 代码使用循环。但是循环不起作用。我做错了什么?
<ul class="list1">
<li class="opt1">option1</li>
<li class="opt2">option2</li>
<li class="opt3">option3</li>
<li class="opt4">option4</li>
<li class="opt5">option5</li>
<ul class="list2">
<li class="opt1">option1</li>
<li class="opt2">option2</li>
<li class="opt3">option3</li>
<li class="opt4">option4</li>
<li class="opt5">option5</li>
for (var x = 1; x <= 5; x++){
$(".list1 li.opt" + x).click(function() {
$(".list2 li").removeClass("selected");
$(".list2 li.opt" + x).addClass("selected");
});
}
【问题讨论】:
-
类名可以相同,让一切变得简单!
-
原始代码失败的原因。 stackoverflow.com/questions/750486/…
-
如果你知道你可以有多个链表,你可以在一个选择中转换它们并使用这个appelsiini.net/projects/chained(只有当你知道有些东西会走得很远并且你可能会失去对它们的控制时)
标签: javascript jquery loops for-loop