我昨天和今天的大部分时间都在寻找解决方案,但一无所获。我正在为客户创建一个新闻网站。我使用Galleria作为主页滑块。我没有使用wordpress插件版本,而是使用可以从网站下载的jQuery版本。
从视觉上看,它在FF和手机上工作得很好。然而,在FF错误控制台上,它说scriptaulous需要1.6或更高版本的原型。在Chrome中,这是一个50/50的镜头,如果它工作与否,在ie9和ie10中,它似乎要么在舞台的左上角做一个小图像,要么在右下角切断一个大图像,是的,仍然有过渡。我也收到消息说它不能在别人的机器上加载。
我已经尝试链接到prototype.js文件以及添加jQuery.noConflict(),但没有运气。
我也试过编辑代码,其中Galleria被初始化为jQuery而不是$和其他一些变体。下面是网站和代码片段。
www.penandpixelmedia.com/Zareh <script>
Galleria.loadTheme('galleria/themes/classic/galleria.classic.min.js');
$("div.slide").galleria({
width:1400,
height:620,
transition: 'fade',
showInfo: false,
autoplay: 4000,
lightbox:true,
showImagenav:false,
imageCrop:'landscape',
thumbnails:false
});
</script>
在控制台中,我收到以下错误:
Uncaught TypeError: Object [Object Object] has no method 'galleria'
这个错误导致我认为你初始化Galleria插件不正确。在您的代码中,您将使用以下代码:
$("div.slide").galleria();
我跳到他们的网站,看了看他们的文档。他们似乎建议您执行以下操作来初始化Galleria。
Galleria.run('#galleria');
或者在你的例子中是Galleria.run('div.slide');
另一个注意事项,我注意到你已经在你的网站上包含了三个独立的JavaScript库/框架(Prototype, Scriptaculous和jQuery)。这可能会导致库之间出现一些问题/冲突。
同样,您可以在初始化该插件时单独指定选项。下面是初始化插件所需的代码,并按照自己的意愿对其进行配置:
var jQ = jQuery.noConflict();
jQ(function(){
Galleria.loadTheme('galleria/themes/classic/galleria.classic.min.js');
Galleria.run('div.slide');
Galleria.configure({
width:1400,
height:620,
transition: 'fade',
showInfo: false,
autoplay: 4000,
lightbox:true,
showImagenav:false,
imageCrop:'landscape',
thumbnails:false
});
});