我正在处理一个购买的Isotope图库插件,它会扫描某个图库容器中的所有元素,并根据需要添加/删除类,具体取决于图库过滤。
问题是我现在正在动态获取元素,因此库脚本对于默认加载的元素工作正常,但是一旦我点击“加载更多”以从DB获取更多元素,元素就会被插入容器但我需要在追加后再次执行该库初始化函数。
我尝试将此脚本添加到html head标记:
<script>
function reload_js(src) {
jQuery('script[src="' + src + '"]').remove();
jQuery('<script>').attr('src', src).appendTo('head');
}
</script>
然后我在reload_js
之后立即致电$("#container").append(data);
但是附加的元素仍然没有他们应该拥有的额外类。
任何想法?
答案 0 :(得分:0)
我相信您的回答可以在documentation page上找到。
以下列方式追加元素
// create new item elements
var $items = $('<div class="grid-item">...</div>');
// append items to grid
$grid.append( $items )
// add and lay out newly appended items
.isotope( 'appended', $items )
// sort grid
.isotope({ sortBy : 'symbol' });
你的画廊应该是新布局的。
答案 1 :(得分:0)
所以将元素插入同位素库的行:
我需要的是:$(&#34;#containerisotope&#34;)。同位素(&#39;插入&#39;,$(数据));
重要 - 这可以为您完成所有工作,无需使用jquery追加。只需这一行插入并正确过滤所有新元素。
链接到isotop doc:http://isotope.metafizzy.co/v1/docs/adding-items.html