if (Meteor.isClient) {
Template.articles.rendered = function () {
var container = $('.articles');
var antiIso = $(container.find(".article:not(.isotope-item)"));
if( container.children().length > 0 ) {
if ( !container.hasClass("isotope") ) {
console.log(container);
console.log(container.hasClass("isotope"));
container.isotope({
// options
itemSelector : '.article',
layoutMode : 'fitRows'
});
} else if (container.hasClass("isotope") && antiIso.length > 0) {
console.log("Updating Isos");
container.isotope('addItems', antiIso, function() {
container.isotope();
});
}
}
}
控制台输出:
<div class="articles isotope" style="position: relative; overflow: hidden; height: 281px; ">…</div>
false
我错过了一些明显明显的东西吗?据我所知容器应该有类同位素吗?
答案 0 :(得分:1)
我刚刚意识到console.log并没有像我想象的那样完全正常工作,虽然看起来它有三次同位素console.log每次都会向我显示对象的最终结果。
因此代码运行正常,它似乎没有出现。编辑我的代码到下面修复了问题:
if (Meteor.isClient) {
Template.articles.rendered = function () {
var container = $('.articles');
var antiIso = $(container.find(".article:not(.isotope-item)"));
if( container.children().length > 0 ) {
if ( !container.hasClass("isotope") && antiIso ) {
container.isotope({
// options
itemSelector : '.article',
layoutMode : 'fitRows'
});
} else if (container.hasClass("isotope") && antiIso.length > 0) {
console.log("Updating Isos");
container.isotope('addItems', antiIso, function() {
container.isotope();
});
}
}
}