【发布时间】:2010-12-04 18:29:09
【问题描述】:
我正在尝试使用 jQuery 完成我的第一步,但我在理解如何从 div 父元素中查找子元素列表时遇到了一些麻烦。我习惯于使用 ActionScript 2 和 ActionScript 3,所以我可能会误解一些概念,比如用 jQuery 随机化 div 元素序列的更好方法是什么!
我有这个简单的 HTML 代码部分:
<div class="band">
<div class="member">
<ul>
<li>John</li>
<li>Lennon</li>
</ul>
</div>
<div class="member">
<ul>
<li>Paul</li>
<li>McCartney</li>
</ul>
</div>
<div class="member">
<ul>
<li>George</li>
<li>Harrison</li>
</ul>
</div>
<div class="member">
<ul>
<li>Ringo</li>
<li>Starr</li>
</ul>
</div>
</div>
我尝试了一些方法来做到这一点,例如在一个数组中映射 .member div,然后更改排序顺序但没有成功。
function setArrayElements (element_parent) {
var arr = [];
//alert (element_parent[0].innerHTML);
for (var i = 0; i < element_parent.children().length; i ++) {
arr.push (element_parent[i].innerHTML);
}
}
setArrayElements($(".band"));
当我试图提醒 element_parent[0] 时,我想得到我的 .member div 列表的第一个孩子,但事实并非如此。
如果我使用 element_parent[0].innerHTML 发出警报,我会看到:
<div class="member">
<ul>
<li>John</li>
<li>Lennon</li>
</ul>
</div>
<div class="member">
<ul>
<li>Paul</li>
<li>McCartney</li>
</ul>
</div>
<div class="member">
<ul>
<li>George</li>
<li>Harrison</li>
</ul>
</div>
<div class="member">
<ul>
<li>Ringo</li>
<li>Starr</li>
</ul>
</div>
为什么? 我该怎么做才能得到这样的成员之一?
<div class="member">
<ul>
<li>Paul</li>
<li>McCartney</li>
</ul>
</div>
我确定这应该很容易,但我只是不知道怎么做 :(
请帮忙
谢谢
维托里奥
编辑:
感谢快速和各种获取选定孩子的方式,我会记下这些方式以备不时之需!
我尝试了这种方法,但似乎我无法获得整个 div(如果我弄错了什么,请告诉我,这可能太多了!!)。
我应该得到这个内容:
<div class="member">
<ul>
<li>Ringo</li>
<li>Starr</li>
</ul>
</div>
但是使用像 $("div.band div.member:eq(2)") 这样的方法之一或其他有用的方法,我得到了这个:
alert ($('div.band div.member')[0]);
/* result
<ul>
<li>Ringo</li>
<li>Starr</li>
</ul>
*/
那么有没有办法在我的节点中获取 .member div 容器?
【问题讨论】:
-
你也会得到容器 div。如果使用 Firebug 和
console.log,则输出元素是第一个具有类成员的 div -
啊!谢谢,现在我知道我没有错!再见
标签: jquery html sorting html-manipulation