美文网首页
js瀑布流

js瀑布流

作者: 想和于谦共枕眠 | 来源:发表于2019-08-12 10:11 被阅读0次

瀑布流布局思路:

1、css样式,图片的父级div样式设置为定位或者浮动。

2、找出图片父级元素(box)和最外元素(main);获取box的宽度和main的宽,然后计算main容器一行能容纳多少个box(即有多少列)。

3、声明一个空数组(用于放置每列的高度)。

4、for(var i=0;i<box.length;i++)循环遍历所有的box元素,if 判断i是否小于上面求得的列数,设置box元素top、left和把box元素的高度添加进空数组;如果i值大于列数就是第二行其余的box元素,查找出数组中的最小值和最小值的索引,设置box的top为这个值,left值为box[index].offsetLeft,更新所查找到的数组元素的值(原数组值+当前box的高度)。

5、定位和浮动脱离了文档流,最高给main设置高度为数组的最大值。

瀑布流感悟

1、先要计算出当前可视页面的宽度(当对页面进行ctrl缩放时 再点击刷新 图片的列数会改变)。
2、通过设置的图片的固定宽度 (这里只设置图片的宽度 不对图片的长度进行设置).pic img{ width: 200px;height: auto;height设置成auto自适应;这样就可以有不同的高度。
进行计算取整 得到当前可视页面能放多少个图片。
3、设置一个空数组 用来放置每一列的高度。
4、首先第一行是从第一个开始挨个放 第一行放好后 放置第二行时 通过第一行在空数组存下的数值 遍历找出来最小的一列 将下一张图片放在这一列 同时放置的时候不要忘了进行数组的更新 将数组的数值改成最新的列的高度。

image.png

相关文章

  • 瀑布流布局

    瀑布流布局http://js.jirengu.com/dunawupili/1/ 2.新闻瀑布流http://js...

  • js/jQuery实现瀑布流

    html中主要代码: 实现瀑布流的js代码: css实现瀑布流只需要三行代码: 实现下拉刷新的js代码: js/c...

  • 瀑布流组件初探-Vue.js

    waterfall-瀑布流组件 基于Vue.js的瀑布流组件 GitHub地址: https://github.c...

  • js瀑布流

    瀑布流,又称瀑布流式布局。是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种...

  • js瀑布流

    兼容性1 点击300ms 使用fastclick2 移动端1px 在ios中使用0.5px3 js中获取浏览...

  • js瀑布流

    瀑布流布局思路: 1、css样式,图片的父级div样式设置为定位或者浮动。 2、找出图片父级元素(box)和最外元...

  • js瀑布流

  • js瀑布流

    首先先要理清思路, 每张图片固定宽度,高度大小不一,第一排图片排完后记录每张图片的高度存到一个数组里面;第二排第一...

  • 瀑布流

    1、瀑布流http://js.jirengu.com/nokiqovire/1/edit2、瀑布流新闻网站http...

  • 7.JavaScript下

    页外JS: 往原有标签内增加标签: JS综合练习:瀑布流

网友评论

      本文标题:js瀑布流

      本文链接:https://www.haomeiwen.com/subject/nxandctx.html