我正在使用 jQuery 插件“Owl Carousel”,当我尝试使用 javascript 变量作为选项值初始化插件时,我遇到了一个奇怪的问题。
基本上我有以下几点:
// thumbnail_count is the number of images in the slider,
// already calculated elsewhere
var thumbnail_breakpoints = '';
switch (thumbnail_count) {
case 3:
thumbnail_breakpoints = '[0, 1], [219, 2], [299, 3]';
break;
case 2:
thumbnail_breakpoints = '[0, 1], [219, 2]';
break;
case 1:
thumbnail_breakpoints = '[0, 1]';
break;
}
jQuery(function($) {
$('#itemslider-zoom').data('owlCarousel').reinit({
itemsCustom: [thumbnail_breakpoints]
});
});
这不起作用,并且 itemCustom 的值未正确传递给 reinit 函数。但是,如果我手动输入 itemCustom 的值,则可以根据需要完成工作。对于两个图像,例如
jQuery(function($) {
$('#itemslider-zoom').data('owlCarousel').reinit({
itemsCustom: [[0, 1], [219, 2]]
});
});
谁能帮我解决这是为什么?使用 javascript 调试,我可以看到 thumbnail_breakpoints 肯定设置正确。此外,如果我更改 switch case 语句,以便每个语句直接使用所需的值调用 jQuery 函数,它就可以正常工作,但这是代码的大量重复。
提前感谢您的帮助。
PS这是在prototypejs中,因此为什么在无冲突模式下调用jQuery。