我如何创建包含以下每个链接标题的数组? (链接1,链接2,链接3) - 我正在尝试通过load()命令传递此数据,因此如果用户决定单击其中一个链接,它会预先缓存结果以减少加载时间。 (每个链接调用api获取与标题相关的数据)
<ul id="links">
<li><a href="#" title="Link 1">Link 1</li>
<li><a href="#" title="Link 2">Link 2</li>
<li><a href="#" title="Link 3">Link 2</li>
</ul>
我的想法:
var elems = document.getElementsByTagName("#links li a");
var arr = jQuery.makeArray(elems);
??
但我不知道如何获得每个链接的标题attr()并将其作为数组发送
谢谢 :d
也许最好使用each()然后在其中加载load(),以便递归地进行独立的加载调用?
取而代之的是:
$("#similar-artists li a").each(function() {
alert("alert"); // load();
});
答案 0 :(得分:5)
您可以使用.map()
获取标题数组,例如:
var arr = $("#links a").map(function() { return this.title; }).get();
答案 1 :(得分:2)
一项非常简单的任务:)
var myArray = new Array();
$('#links li a').each(function() {
myArray.push($(this).attr('title'));
});
答案 2 :(得分:0)
如何迭代元素并构建一系列标题,如下所示:
var elems = $("#links li a");
var arr = [];
for (var i = 0; i < elems.length; i++)
arr.push(elems[i].title);