瀑布流的特点:等宽不等高
瀑布流实现 1、获取图片的宽度 2、获取屏幕的宽度 3、获取展示的列数(屏幕宽度/图片宽度) 4、定义一个数组 存放图片的高度 5、遍历所有的图片 目的:定位图片的位置
代码
$(function() { waterFall() }) function waterFall() { var ImgWidth = $('imgs').width() //获取图片宽度 var screenWidth = $(window).width(); //获取屏幕的宽度 var cols = parseInt(screenWidth / img) //求出列数 //创建一个数组 目的用于存放图片高度值 var heightArr = [] //遍历所有图片 目的定位图片的位置 $.each(img, function(index, item) { var imgHeight = $(item).height() //获取图片的高度 //判断是否是第一行 第一行的高度直接存放在数组中 if (index < cols) { heightArr[index] = imgHeight } else { //最小高度值 var minH = Math.min(...heightArr); //最小高度索引 var mIndex = heightArr = heightArr.findIndex(item => item = minH) $(item).css({ postion: 'absolute', top: minH + 'px', left: mIndex * ImgWidth + 'px' }) //最新最小高度的值 heightArr[mIndex] += imgHeight } }) } </script>