我正在使用Handlebars.js作为HTML模板。像这样:
<div class="row">
{{#ifCond ImagePath '==' "/images/noneImage.jpg"}}
<div class="col-md-8">
{{else}}
<div class="col-md-16">
<div class="row">
<div class="col-16-6">
<div class="product-image">
<img src="//images/{{ImagePath}}" />
</div>
</div>
{{/ifCond}}
...
这是我的Colorbox模板及其工作原理。如果产品没有图片,请获取col-md-8
课程。 (如果有图像,请获取col-md-16
)
我的Colorbox JS在这里:
productDetail.bind('onLoaded', function () {
productDetailLB = new lightbox({
html: '<div class="productDetail"></div>',
className: 'product-detail-lightbox',
maxWidth: 870,
height: 500,
onComplete: function () {
productDetail.setElement('.productDetail');
productDetail.render();
}
});
});
但如果产品没有图片,我想要maxWidth: 500
我该如何解决?谢谢。
答案 0 :(得分:0)
使maxWidth成为测试是否有图像的函数。如果不是,则返回500,否则返回870。
productDetailLB = new lightbox({
html: '<div class="productDetail"></div>',
className: 'product-detail-lightbox',
maxWidth: function(){
if ($('.product-image')){
return 870;
} else {
return 500;
}
},
height: 500,
onComplete: function () {
productDetail.setElement('.productDetail');
productDetail.render();
}
编辑:由于我没有很多上下文,因此无法保证这将起作用。我所做的就是使用jquery测试是否存在带有“product-image”类的div元素。如果没有,你应该能够自己找出if语句。