在所有section id的jquery中创建一个数组

时间:2012-12-21 05:06:55

标签: jquery

我正在构建一个涉及相当多动画的网站。我需要在页面中创建一个包含所有section id的数组。我真的不知道怎么做,但很确定这是正确的方向。我首先尝试获取这些值:

 var $find = $('body').find('section[id]');

我已经尝试过警告输出,我只是得到对象对象?有人能指引我正确的方向。 感谢

4 个答案:

答案 0 :(得分:1)

要创建array ids,您可以使用jQuery map()

<强> Live Demo

ids = $('body').find('section').map(function() {
    return this.id;
})

$.each(ids, function(idx, el) {
    alert(el);
})​

答案 1 :(得分:1)

您可以尝试以下代码

var IDs = [];
$('body').find("section").each(function(){ IDs.push(this.id); });

它会将所有部分ID放入ID数组。

答案 2 :(得分:1)

这将创建一个包含所有ID的数组。

var arr = $.map($("section[id]"), function(o, i){
    return o.id;
});

答案 3 :(得分:1)

你的问题包含答案本身。 var $find已经是一个包含所有部分的ID的对象。请参阅以下代码:

​$sections = ​$("body").find("section");
$sections.each(function(){
    console.log($(this).attr("id"));
});

Chec this提供更多信息。