时间:2021-05-25
最近听朋友们说起瀑布流挺多的,自己就去研究下了,一个简单的原生demo,分享给大家...
简单分为三个文档,有详细的注释:img;ajax.php;demo.php
其中img文件夹中放入图片 1.jpg;2.jpg;3.jpg....
ajax.php页面
demo.html页面
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>瀑布流</title> <style> li{ list-style: none; float: left; margin:4px; } img{ border:4px solid black; } </style></head><body> <ul id="ul"> <!-- <li><img src="./img/1.jpg" height="300" alt=""></li> --> </ul></body><script> //找对象 var ul = document.getElementById('ul'); //拿数据 function getData() { var ajax = new XMLHttpRequest(); ajax.open('get', 'ajax.php', true); ajax.send(); ajax.onreadystatechange = function() { if (ajax.readyState == 4 && ajax.status == 200) { var res = ajax.responseText; //处理结果 var obj = JSON.parse(res); for (var k in obj) { // obj[k]; //创建节点 var li = document.createElement('li'); li.innerHTML = '<img src="./img/'+obj[k]+'" height="300" />'; ul.appendChild(li); } } } } getData(); var timer; //判断滚动条的高度,加载第二批文件 window.onscroll = function() { //获取三高 var zGao = document.documentElement.scrollHeight;//总高度 var lGao = document.documentElement.clientHeight;//浏览器可用高度 var gGao = document.body.scrollTop || document.documentElement.scrollTop;//滚出去的高度 // console.log(zGao, lGao, gGao); document.title = zGao + '_' + lGao + '_' + gGao; if (zGao - lGao - gGao < 500) { clearTimeout(timer); //用一次性定时器解决连续加载的问题 timer = setTimeout(function(){ getData(); }, 200) } }</script></html>以上这篇原生ajax瀑布流demo分享(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
原生JS实现的瀑布流布局,代码及demo代码地址:https://github.com/leozdgao/responsive_waterfallDemo:ht
本文实例为大家讲解了javascript瀑布流代码,即js页面滚动延迟加载图片,分享给大家供大家参考,具体代码如下原生Js页面滚动延迟加载图片*{margin:
这是一款非常轻量级的纯原生JS的瀑布流插件——Macy.js,如今图片和视频网站非常多,非常适应瀑布流这样的布局方式来呈现给用户。这款流布局JS插件仅有4KB的
本文实例讲述了thinkPHP实现瀑布流的方法。分享给大家供大家参考。具体分析如下:很多人都想做瀑布流的效果,这里告诉大家官网使用的方法,首先要下载瀑布流的插件
1、原生ajax请求方式:1varxhr=newXMLHttpRequest();2xhr.open("POST","http://xxxx.com/demo/