jQuery实现动态加载瀑布流
网络编程 2021-07-04 14:06www.168986.cn编程入门
这篇文章主要为大家详细介绍了jQuery实现动态加载瀑布流,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
jquery实现瀑布流,供大家参考,具体内容如下
案例分析
- ,它的每个图片是等宽的
- ,除第一排正常显示其余的图片都会显示在上一排中高度最小的那个图片的狼蚁网站SEO优化
- ,就是根据最矮图片所在位置的宽高来,决定绝对定位设置图片显示的位置
效果图
实现步骤
html结构
<div class="container"> <div class="box"> <div class="content"><img src="./image/1.jpg" alt=""></div> </div> <div class="box"> <div class="content"><img src="./image/2.jpg" alt=""></div> </div> <div class="box"> <div class="content"><img src="./image/3.jpg" alt=""></div> </div> </div> </div>
css样式
具体就是对每个boxdiv浮动并设置样式
{ padding: 0; margin: 0; } .box { position: relative; float: left; margin: 10px; } .content { padding: 15px; border: 1px solid #c; box-shadow: 0 0 5px #c; border-radius: 10px; } .content img { width: 200px; height: auto; }
js(jquery)代码
主要是根据一排中高度最小的宽度个高度进行绝对定位的设置
<script> $(function () { //jQuery代码 imgLocation() function imgLocation() { var box = $('.box') var num = Math.floor($(window).width() / box.eq(0).width()) var boxHeights = [] box.each(function (index, value) { var boxHeight = box.eq(index).height() if (index < num) { boxHeights[index] = boxHeight } else { var minHeight = Math.min.apply(null, boxHeights) var minIndex = $.inArray(minHeight, boxHeights) $(value).css({ 'position': 'absolute', '': minHeight, 'left': box.eq(minIndex).position().left }); boxHeights[minIndex] += box.eq(index).height() } }) } }) </script>
根据鼠标的滚动动态的加载图片
案例分析
这里的动态是主要是模仿动态加载数据(伪动态)
- ,根据鼠标滚动的大小和界面的高度判断是否要动态加载
- ,就是访问数据,并动态形成jquery数据类型
- ,把生成的数据追加的.container中进行显示
效果图
实现步骤
- html和css的代码都一样这里就不重复写了
- js代码
主要是判断什么时候新增图片数据,新增后插入到模板就行了
其中的dataImg就是模仿的假数据
var dataImg = { 'data': [{ 'src': '1.jpg' }, { 'src': '2.jpg' }, { 'src': '3.jpg' }, { 'src': '4.jpg' }] } window.onscroll = function () { if (scrollside()) { $.each(dataImg.data, function (index, value) { var html = `<div class="box"> <div class="content"><img src="./image/${value.src}" alt=""></div> </div>` $(html).appendTo($('.container')) }) imgLocation() } } function scrollside() { var box = $('.box') var lastboxHeight = box.last().get(0).offsetTop var documentHeight = document.body.scrollHeight + 130 var scrollHeight = $(document).scrollTop() console.log(lastboxHeight, scrollHeight, documentHeight) return (lastboxHeight < scrollHeight + documentHeight) ? true : false } oxHeight, scrollHeight, documentHeight) return (lastboxHeight < scrollHeight + documentHeight) ? true : false }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。
编程语言
- 甘肃哪有关键词排名优化购买方式有哪些
- 甘肃SEO如何做网站优化
- 河南seo关键词优化怎么做电话营销
- 北京SEO优化如何做QQ群营销
- 来宾百度关键词排名:提升您网站曝光率的关键
- 卢龙关键词优化:提升您网站排名的策略与技巧
- 山东网站优化的注意事项有哪些
- 四川整站优化怎样提升在搜索引擎中的排名
- 疏附整站优化:提升网站性能与用户体验的全新
- 海南seo主要做什么工作售后服务要做到哪些
- 荣昌百度网站优化:提升您网站的搜索引擎排名
- 河北seo网站排名关键词优化如何做SEO
- 江西优化关键词排名推广售后保障一般有哪些
- 古浪SEO优化:提升你的网站可见性
- 西藏网站排名优化怎么把网站排名在百度首页
- 如何提升阳东百度快照排名:详尽指南