我想动态地将占位符图片添加到我的页面。
像这样插入不起作用:
$('<li>',{class:'file-item'})
.append($('<img>',{'data-src':'holder.js/150x150'}))
.append($('<span>',{class:'file-name'}).text(file.name))
.appendTo('#file-list');
因为持有者脚本已经运行并且没有搜索新元素。
然而,我们可以手动再次运行它:
Holder.run()
但是它会扫描已经添加的所有元素。
所以......我有没有办法让holder.js创建并给我一个DOM元素,这样我就可以手动添加它而无需重新运行整个东西?
答案 0 :(得分:8)
将Node
作为images
属性传递给Holder.run
,您就可以在任何单个图片上运行Holder。 Holder本身不会创建DOM元素,只会更改src
值。
代码:
var image = $("<img>").attr({
"data-src": "holder.js/300x200"
})
Holder.run({
images: image[0]
});
image.appendTo("body");