每个函数从数组中创建img元素
each function to create img elements out of array
我需要一些支持。我有一个数组:
var imageArr = [
{ someobject: '..', anotherobject: '..', img: 'SourceOfFirstImg.jpg'},
{ someobject: '..', anotherobject: '..', img: 'SourceOfSecondImg.jpg'},
// 100 times
]
我想做的是创建一个.each()
函数来创建<img>
元素,用每个链接src填充它们并将它们附加到div。如果有一个普通的JS方式,我不一定需要each()
,它也是好的。
我该怎么做?
您可以使用map
方法创建一个图像元素数组来附加:
$('.somediv').append($.map(imageArr, function(o){
return $('<img>', { src: o.img });
}));
var imageArr = [
{ someobject: '..', anotherobject: '..', img: 'SourceOfFirstImg.jpg'},
{ someobject: '..', anotherobject: '..', img: 'SourceOfSecondImg.jpg'},
// 100 times
]
for (var i = 0; i < imageArr.length; i++) {
var img = $('<img class="foo" >');
img.attr('src', imageArr[i].img);
$('body').append(img);
};
简单来说,我建议:
var imageArray = [{
'alt': 'Alt text',
'src': 'http://placekitten.com/200/200',
'title': 'Title text'
}, {
'alt': 'More alt text',
'src': 'http://lorempixel.com/200/200',
'title': 'Yet another title attribute'
}],
target = document.body,
img;
imageArray.forEach(function(a){
img = document.createElement('img');
for (var prop in a) {
if (a.hasOwnProperty(prop)) {
img[prop] = a[prop];
}
}
target.appendChild(img);
});
JS Fiddle demo.
编辑使用OP发布的imageArr
:
var imageArr = [{
someobject: '..',
anotherobject: '..',
img: 'SourceOfFirstImg.jpg'
}, {
someobject: '..',
anotherobject: '..',
img: 'SourceOfSecondImg.jpg'
}],
target = document.body,
img;
imageArr.forEach(function (a) {
img = document.createElement('img');
img.src = a.img;
target.appendChild(img);
});
JS Fiddle demo.
引用:
-
Array.prototype.forEach()
. -
document.createElement()
. -
for...in
. -
Object.prototype.hasOwnProperty()
.
试试这个:
var imageArr = [
{ someobject: '..', anotherobject: '..', img: 'http://www.clipartbest.com/cliparts/Rcd/K5B/RcdK5Bbgi.png'},
{ someobject: '..', anotherobject: '..', img: 'http://www.clipartbest.com/cliparts/Rcd/K5B/RcdK5Bbgi.png'},
]
var div = document.createElement("div");
for(i = 0; i< imageArr.length; i++)
{
var img = document.createElement("img");
img.setAttribute("src",imageArr[i].img);
div.appendChild(img);
}
alert(div.innerHTML);
是演示
相关文章:
- 无法通过javascript动态创建img
- 设置'src'img标记使用主干模板动态创建
- 仅使用JavaScript/获取当前创建的img的位置/放置文本
- 动态设置背景图像或创建img标记有什么区别
- 使用JavaScript创建IMG标记,无效
- 使用 jQuery 创建具有 onerror 属性的 img
- 我收到错误.我需要创建 img 标签
- 在页面上找到img标签,创建og:image元标签并附加到头部
- 捕获<的img加载错误;img>页面加载后创建的标签(例如通过AJAX)
- Javascript创建只有一个维度集的img会导致IE中的拉伸
- 如何在javascript中创建img标签字符串
- 创建一个img元素's src另一个元素's background-image
- 通过链接动态创建img,而不附加多个实例
- 从画布动态创建img元素
- 如何为tinymce创建的img标签设置自定义宽度参数
- 每个函数从数组中创建img元素
- 引用img src中的变量以创建链接
- 从文件夹动态创建img元素
- 创建类似img标记的自定义元素
- 创建 img 元素的最佳 JavaScript 代码是什么?