課程
/前端開(kāi)發(fā)
/JavaScript
/瀑布流布局
瀏覽器先縮小打開(kāi)網(wǎng)頁(yè),最大化后刷新,會(huì)有一部分空白,這個(gè)怎么解決???
2015-07-30
源自:瀑布流布局 3-2
正在回答
你應(yīng)該使用了?$(window).on("resize", waterfall); 這句監(jiān)聽(tīng)器了窗口大小的變化吧。
試想,你先縮小再放大,就會(huì)產(chǎn)生這樣的效果。這是為什么呢?原因是窗口變小后調(diào)用了waterfall方法,此時(shí)算出來(lái)的列數(shù)比原先的小,這時(shí)原先是處在第一行的圖片現(xiàn)在到了第2行,那么到第2行的話就一定會(huì)被添加了 position:absolute屬性。再放大的話,這個(gè)盒子又要”回到“第1行,但是它已經(jīng)被添加了 position:absolute屬性,所以它”回不去“了。因此,需要 在源代碼中加上這么一句:
if(index < cols) { ? ?$(value).removeAttr("style"); //移除style樣式,配合 resize 事件(窗口變化時(shí)觸發(fā)) ? ?hArr[index] = h;} else {
如果它是處在第1行,那么一定要先移除掉style屬性,不管它有沒(méi)有style屬性了。
//按照瀏覽器最大化的寬度,6是經(jīng)過(guò)測(cè)試得到var cols = (Math.floor($(window).width()/w)<6)?6:Math.floor($(window).width()/w);
加上這一句可以解決,還有其他方法嗎???
舉報(bào)
瀑布流布局是網(wǎng)站比較流行的一種布局方式,教你實(shí)現(xiàn)三大方式
1 回答瀏覽器變化是執(zhí)行waterfall()方法 縮小時(shí)可以 放大不行
2 回答當(dāng)瀏覽器窗口縮小或者放大時(shí),列數(shù)仍會(huì)隨之改變
1 回答屏幕縮小 放大的問(wèn)題
2 回答這個(gè)有bug啊,把瀏覽器窗口縮小時(shí)滾動(dòng)式正常的,但是放大后就會(huì)有重疊現(xiàn)象出現(xiàn)了,怎么解決呢
1 回答為什么在Firefox瀏覽器下會(huì)有一塊區(qū)域重疊,其他瀏覽器都沒(méi)有問(wèn)題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-02-04
你應(yīng)該使用了?$(window).on("resize", waterfall); 這句監(jiān)聽(tīng)器了窗口大小的變化吧。
試想,你先縮小再放大,就會(huì)產(chǎn)生這樣的效果。這是為什么呢?原因是窗口變小后調(diào)用了waterfall方法,此時(shí)算出來(lái)的列數(shù)比原先的小,這時(shí)原先是處在第一行的圖片現(xiàn)在到了第2行,那么到第2行的話就一定會(huì)被添加了 position:absolute屬性。再放大的話,這個(gè)盒子又要”回到“第1行,但是它已經(jīng)被添加了 position:absolute屬性,所以它”回不去“了。因此,需要 在源代碼中加上這么一句:
if(index < cols) {
? ?$(value).removeAttr("style"); //移除style樣式,配合 resize 事件(窗口變化時(shí)觸發(fā))
? ?hArr[index] = h;
} else {
如果它是處在第1行,那么一定要先移除掉style屬性,不管它有沒(méi)有style屬性了。
2015-07-30
//按照瀏覽器最大化的寬度,6是經(jīng)過(guò)測(cè)試得到
var cols = (Math.floor($(window).width()/w)<6)?6:Math.floor($(window).width()/w);
加上這一句可以解決,還有其他方法嗎???