【发布时间】:2012-07-17 14:11:25
【问题描述】:
所以基本上这是我的脚本:
代码 -
jQuery(document).ready(function() {
var rel = new Array();
var count = 0;
jQuery(".setting").each(function() {
rel[count] = [];
if(jQuery("span").attr("rel")) {
rel[count].push(jQuery("span").attr("rel"));
}
console.log(count);
count++;
});
jQuery("body").text(rel);
console.log(rel);
});
和
<div class="setting">
<span rel="Variable">Variable</span>
<span rel="Item">Item</span>
<span rel="Something">Something</span>
</div>
<div>
<span rel="Smth">Smth</span>
<span>Sec</span>
</div>
<div class="setting">
<span>Second</span>
<span rel="first">First</span>
<span rel="Third">Third</span>
</div>
我的问题,为什么会显示变量,变量?
我希望它首先显示变量,但我做不到。
基本上我想要实现的是创建新数组,在其中插入每个 div.setting 具有 rel 属性数组的跨度元素。
所以基本上在这个例子中它应该输出 -
Array (
Array[0] => "Variable","Item","Something";
Array[1] => "first","Third";
)
希望你明白我的意思:)
编辑:
在我的另一个示例中,我尝试首先在每个函数中添加 jQuery("span").each(function() ...,但它输出了两个带有 rel 的所有 span 元素的完整数组。我不能有不同每个 div 元素的类 / id,因为它们都将具有相同的类。
【问题讨论】:
-
任何理由
rel是一个数组数组,每个数组只有一个项目? -
我认为您的问题的关键是 jQuery
.find()函数。这使您可以从 DOM 树中的特定点开始查找元素。 -
我希望所有的 SO 问题都和这个一样。
标签: javascript jquery html