6

持有人.js

我想动态地将占位符图像添加到我的页面。

像这样插入它不起作用:

$('<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 元素,这样我就可以手动添加它而无需重新运行整个东西?

4

1 回答 1

8

将 aNode作为images属性传递给Holder.run,您将能够在任何单个图像上运行 Holder。Holder 本身不会创建 DOM 元素,它只是更改src值。

代码:

var image = $("<img>").attr({
    "data-src": "holder.js/300x200"
})

Holder.run({
    images: image[0]
});

image.appendTo("body");

现场示例:http: //jsfiddle.net/imsky/p3DMa/

于 2013-02-17T08:21:27.497 回答