瀑布布局(waterflall flow)实现
2024-09-03 13:05:18
瀑布流,又称瀑布流式布局。是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动。这种布局还会不断加载数据块并附加至当前尾部。最早采用此布局的网站是Pinterest,逐渐在国内流行开来。国内大多数清新站基本为这类风格
特点:每个图片的宽度相等,长度不同。随着窗口的宽度的改变页面上并排的数量也会改变。
第一种比较低级的js实现。
页面加载时:
window.onload=function(){ flall(); }
页面重载的时候:
window.onresize=function(){ flall(); }
实现函数:
function flall(){ //获取页面的元素 var elems = document.getElementById("box1").children; //设置每行的数量=parseInt(可视页面的宽度/图片的宽度) var mun = parseInt(window.innerWidth/picWidth); //设置水平距离=(窗口的宽度-图片的宽度)/(图片的数量+1) var Lie_space=(window.innerWidth-num*picWidth)/num+1 //设置垂直距离(可以自定定义) var vertical_space = 20; //设置存放位置的数组 var arr=[]; //计算水平位置&垂直的位置放入数组 for(var i =0 ; i<num; i++){ arr.push[{ left: i * picWidth+i * Lie_space, top:vertiacl_space }]; } //设置图片的位置 for(var i =0; i< eles.lenght;i++){ list[i].style.left=arr[i%num].left+"px"; list[i].style.top= arr[i%num].top +"px"; arr[i%num].top+=list[i].offsetHeight+vertiacl_spacel } }
第二种:待续。。。。。
最新文章
- C#操作SQLite数据库
- BZOJ4562: [Haoi2016]食物链
- Android 调用系统联系人界面的添加联系人,添加已有联系人,编辑和修改。
- css3动画属性(transitions:property duration timing transition-delay)
- OpenCV Linux 安装 Make出错
- 【Matplotlib】绘图常见设置说明
- matrix_last_acm_4
- JS实现冒泡排序,插入排序和快速排序(从input中获取内容)
- 【转】Oracle中dual表的用途介绍
- std::numeric_limits<;int>;::max() error C2589: &#39;(&#39; : illegal token on right side of &#39;::&#39; 解决办法
- Android学习笔记(一)Android应用程序的组成部分
- javaScript的select元素和option的相关操作
- Java基础知识强化50:运行javac 报告javac不是内部或外部命令(已解决)
- 触发按钮改变panel面板上的小圆圈颜色
- Android 6.0 M userdebug版本执行adb remount失败
- 一周一个小demo — 前端后台的交互实例
- javascript 玩转Date对象
- 如何直接在github上预览html网页效果
- 关于移动web教程免费发布
- typeScript函数篇