亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

預加載實現瀑布流布局--縱向

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
div{
width: 1000px;
}
img{
position: absolute;
}
</style>
</head>
<body>
<div></div>
<script type="text/javascript">
let box=document.querySelector('div'),//容器
baseWidth=200,//基宽;
imglist=[],//图片中转站;
pages=80,//图片数目;
columns=5//列数;
for(let i=1;i<pages+1;i++){
init(i)
}
function init(i){
let img=new Image();
img.src='./images/pic ('+i+').jpg';
img.=function(){
//添加缩放比例
Object.defineProperty(img,'scale',{
value:img.width/img.height
})
imglist.push(img);
if(imglist.length==pages){
//图片信息全部加载完成
console.log('over!')
formate();
}
}
}
function formate(){
let rows=pages/5;
for(let i=0;i<rows;i++){
for(let j=0;j<5;j++){
let index=i*5+j;//当前坐标
imglist[index].style.width='200px';
imglist[index].style.height=200/imglist[index].scale+'px';
imglist[index].style.left=j*220+'px';//基于当前宽度+20(列间隔)
if(i!=0){//Int转换为整数 20为行间隔 h t当前图片的上方的height top 
let t=Int(imglist[(i-1)*5+j].style.top),
h=Int(imglist[(i-1)*5+j].style.height);
imglist[i*5+j].style.top=t+h+20+'px';
}else
imglist[i*5+j].style.top='0px';
box.appendChild(imglist[i*5+j])//放入容器
}
}
}
function Int(str){
return Number(str.replace('px',''))
}
</script>
</body>
</html>

Emm......

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消