我的目标:
使用jQuery插件grid-a-licious
在jQuery Mobile页面中显示类似pinterest的网格。页面加载时,图像必须排列在网格中。
(失败)结果:
我想出的代码如下所示:http://jsfiddle.net/hxNDE/6/
基本上,我使用pageshow
JQM事件来激活Grid-a-licious。它有效,但是由于页面转换导致了一个主要的闪烁:
$('#page-2').on('pageshow', function () {
$("#grid").gridalicious({
gutter: 1,
width: 100
});
});
当我使用pagebeforeshow
事件时,它根本不起作用,因为Grid-a-licious无法检测屏幕宽度并决定要构建多少列:
$('#page-2').on('pagebeforeshow', function () {
...same...
});
当前的解决方法: 我已禁用所有JQM过渡动画,因此当图像排列在网格中时,没有可见的闪烁。
我想找到一个解决方案,我可以在没有闪烁的情况下使用JQM转换和Grid-a-licious。
有什么建议吗?
答案 0 :(得分:0)
我修复了我的问题,并修复了Grid-A-Licious git存储库:
https://github.com/suprb/Grid-A-Licious/pull/22
基本上,当css display
被隐藏或者处于正常状态时,错误地计算了宽度
var swappedStyle = this.box.css('display');
this.box.css('display', 'block');
width = this.box.width(); // Previously, only this line
this.box.css('display', swappedStyle);
注意: