我无法将Galleria图库插件集成到我的一个Jquerytools标签上。当使用Galleria直接导航到页面时(例如:www.domain.com/index.php#tabnameofgalleriapane),没有问题。
每当没有立即加载带有galleria的窗格时(默认窗格是另一个窗格),Gallery会抛出一个错误:Fatal error: Could not extract a stage height from the CSS. Traced height: 0px.
,这是合乎逻辑的,因为当Galleria窗格未激活时,它的css可能是{{ 1}} ...
定义身高&字面上的宽度似乎不起作用。这是之前的设置:
display:none;
所以我想在包含Galleria插件的窗格上加载Galleria插件的负载,因为在那一刻,Galleria窗格确实有一个高度......我找到了一些帮助我的东西方式,但现在我得到其他JavaScript冲突错误(请参阅下面的解释)。
jQuery("#jp_nav").tabs(".jp_pane", { history: true } );
jQuery('#gallery').galleria({
imageCrop: false,
transition: 'slide',
autoplay: 7000,
width: 960,
height: 640
});
由于我无法控制的原因,我正在编写的网站使用jQuery和Prototype / Scriptaculous。因此,请考虑脚本必须以noConflict模式编写。 (我正在设置jQuery("#jp_nav").tabs(".jp_pane", {
initialIndex: 0,
onBeforeClick: function(event, i) {
// get the pane to be opened
var pane = this.getPanes().eq(i);
var src = this.getTabs().eq(i).attr("href");
pane.load(src, "#jp_images", function(){
jQuery('#gallery').galleria({
imageCrop: false,
transition: 'slide',
autoplay: 7000,
width: 960,
height: 640
});
});
},
history: true
});
)
如果下面的脚本让我走上正轨,有人可以告诉我吗? 当#jp_images选项卡加载时,有人可以帮我修改脚本吗? 现在,上面的脚本给了我与Prototype的冲突错误。
焦急地等待你的专家意见!
此致
马腾
答案 0 :(得分:0)
我设法找到了一个快速而肮脏的解决方案(感谢vfxdude)
每次点击带有Galleria的标签时,我会强制重新加载页面,如下所示:
tabName = 'jp_images';
jQuery('#jp_nav a[href="#'+tabName+'"]').click(function() { if (location.hash == '') location.replace(location.href+'/#'+tabName); });
在此之后,我可以使用常规的旧Galleria插件初始化。
当然,这有点脏,但是在截止日期前这是一个简单快捷的解决方法。