为了账号安全,请及时绑定邮箱和手机立即绑定

浏览器放大、缩小引起问题

http://img1.sycdn.imooc.com//55b9c76c0001804913140520.jpg

浏览器先缩小打开网页,最大化后刷新,会有一部分空白,这个怎么解决???

正在回答

2 回答

你应该使用了 $(window).on("resize", waterfall); 这句监听器了窗口大小的变化吧。

试想,你先缩小再放大,就会产生这样的效果。这是为什么呢?原因是窗口变小后调用了waterfall方法,此时算出来的列数比原先的小,这时原先是处在第一行的图片现在到了第2行,那么到第2行的话就一定会被添加了 position:absolute属性。再放大的话,这个盒子又要”回到“第1行,但是它已经被添加了 position:absolute属性,所以它”回不去“了。因此,需要 在源代码中加上这么一句:

if(index < cols) {
   $(value).removeAttr("style"); //移除style样式,配合 resize 事件(窗口变化时触发)

   hArr[index] = h;
} else {

如果它是处在第1行,那么一定要先移除掉style属性,不管它有没有style属性了。

1 回复 有任何疑惑可以回复我~

//按照浏览器最大化的宽度,6是经过测试得到
var cols = (Math.floor($(window).width()/w)<6)?6:Math.floor($(window).width()/w);

加上这一句可以解决,还有其他方法吗???

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

浏览器放大、缩小引起问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信