【发布时间】:2013-10-13 23:37:06
【问题描述】:
我在我的 JavaScript 文件中编写了此代码部分,以选择我的 .html 文件中的所有 img 标记。
var imgs = document.getElementsByTagName('img');
如何将这些标签的src 值提取到数组中以备将来使用?
【问题讨论】:
标签: javascript html
我在我的 JavaScript 文件中编写了此代码部分,以选择我的 .html 文件中的所有 img 标记。
var imgs = document.getElementsByTagName('img');
如何将这些标签的src 值提取到数组中以备将来使用?
【问题讨论】:
标签: javascript html
就这样试试
function img_find() {
var imgs = document.getElementsByTagName("img");
var imgSrcs = [];
for (var i = 0; i < imgs.length; i++) {
imgSrcs.push(imgs[i].src);
}
return imgSrcs;
}
【讨论】:
使用src标签:
var imgs = document.getElementsByTagName("img")[0].src;
或
var imgs = document.getElementById("imgid").src;
【讨论】:
你可以这样尝试:-
var img = document.getElementById('myImg');
var attr = img.getAttribute('src');
或者像这样尝试:-
var imgs = document.getElementById('your_image_id').getAttribute('src');
【讨论】:
Array.prototype.map.call(document.getElementsByTagName('img'), function(img) {
return img.src;
});
这就是map 的用途。
你也可以使用空数组:
[].map.call(document.getElementsByTagName('img'), function(img) {
return img.src;
});
如果需要更多浏览器支持或想要使用 util lib,
jQuery.map(document.getElementsByTagName('img'), function(img){ return img.src; });
或者只是按照它应该使用的方式使用 jQuery(尽管上面可以使用 _.map,使用下划线或 lodash):
jQuery('img').map(function(){ return this.src; });
【讨论】: