我试图遍历页面上的所有链接,并使用jquery将它们添加到数组中,但我似乎无法正确使用它。
我拥有的是:
$(document).ready(function() {
var links = new Array();
var link;
for (link in $("a"))
{
links.push(link);
}
alert(links);
});
我得到的是一组数字(我认为页面上的每个链接都有一个),以及属性,事件等,如'selector','context',...'onmouseover'等等。
我错过了什么?
答案 0 :(得分:4)
执行$('a')
时,您已经拥有了一个jQuery对象,它是一个类似于数组的对象。
如果您想要实际的Array
元素,可以使用Array
将其转换为$.makeArray()
。
var array = $.makeArray( $('a') );
编辑:如果您对在for/in
中获得这些意外结果的原因感到好奇,请在您喜欢的浏览器中启动开发人员工具,并将jQuery对象记录到安慰。你会看到你得到的所有(原型)属性。
console.log( $('a') );