JS通过创建交互式、快速动态网页应用的网页开发技术多列布局自动加载实现瀑布流效果
埃阿斯
•说明:本文效果是无限加载的,意思就是你一直滚动就会一直加载图片出现,通过鼠标滚动距离来判断的,所以不是说的那种加载一次就停了的那种,那种演示下次我会再做一次
钢性铸铁部分用的是html5 css3的新属性,图片会自动添加到每行的最顶端上去,而不是用射流研究…去判断。去除了一些射流研究…计算的麻烦。
钢性铸铁部分:
* { margin : 0;padd : 0;盒子尺寸:边框盒子;}正文{背景: # 352323 URL(images/a . png);} img { display:块;}截面{最大宽度: 95%;margin: 0自动飞越:隐藏;列数: 5;色谱柱-间隙:0;列填充:自动;}图{ border: 2px纯粉色;余量: 0 5px 10px避免内部破裂;padding: 5px }图img { width : 100%;}图标题{ padd : 10px 0;文本对齐:中心;字体粗细: 900;color: # a77869}html部分:
通过射流研究…插入节点,因为后台不知道多少张图片
部分!-图img src=' http : images/1。jpg ' alt=' fig caption '往后余生,风雪是你/图标题/图部分js有两个部分,一个是我封装的创建交互式、快速动态网页应用的网页开发技术函数,和一些判断函数
第一部分
窗户。onload=function(){ var section=document。getelementsbytagname(' section ')[0];//运行创建交互式、快速动态网页应用的网页开发技术函数;ajax('get ',' active.php ',' num=10 ',函数(数据){ //解析数据对象让img_data=JSON.parse(数据);控制台。日志(img _ data);//循环建多少图片配多少标签用于(设I=0;i img _ data.lengthi ) { //建立数字标签让图=文档。创建元素('图');//创建两个子元素图片和图标题,并赋值让img=document。创建元素(' img ');img。src=img _ data[I];让图标题=文档。创建元素(' fig caption ');figcaption.innerHTML='往后余生,风雪是你;//插节点图。appendchild(img);图。appendchild(图标题);section.appendChild(图);} });文件。on scroll=function(){ var scroll top=document。文档元素。滚动顶部;//距离网页高度控制台。日志(滚动顶部);//var ks=文档。文档元素。客户身高;//可是化窗口高度var ks=窗口。内部高度| |文档。文档元素。客户身高;//可是化窗口高度/兼容方法var ht=文档。文档元素。偏移光线;//html总高度//控制台。日志(ht);if (scrollTop 1=ht - ks) { //鼠标滚动的距离大于超文本标记语言总高度-窗口的距离(也就是超文本标记语言在可视窗口之下的总高度)时触发函数;//执行函数ajax('get ',' active.php ',' num=10 ',函数(数据){ //解析数据对象让img_data=JSON.parse(数据);控制台。日志(img _ data);//循环建多少图片配多少标签用于(设I=0;i img _ data.lengthi ) { //建立数字标签让图=文档。创建元素('图');//创建两个子元素图片和图标题,并赋值让img=document。创建元素(' img ');img。src=img _ data[I];让图标题=文档。创建元素(' fig caption ');figcaption.innerHTML='往后余生,风雪是你;//插节点图。appendchild(img);图。appendchild(图标题);section.appendChild(图);} });} } };第二部分:
/** * ajax封装* @param {string} mehod请求数据方法* @param {string} url请求地址* @param {string}数据请求参数* @param {[functiong]}成功[请求成功之后执行的函数0]* @ return {[none]} none */function Ajax(mehod,url,data,success){ var xhr=null;如果(窗口. XMLHttpRequest){ xhr=new XMLHttpRequest();} else { xhr=新ActiveX对象(' Microsoft。xmlhttp ')}//如果有参数得到方法需要拼接字符串url?数据if(mehod==' get ' data){ URL='?'数据;}//打开方法xhr.open(mehod,url,true);//发送方法if(mehod===' get '){ xhr。send();} else { xhr。setrequestheader('内容类型',' application/x-www-form-URL编码');xhr(数据);} xhr。onreadystatechange=function(){ if(xhr。readystate===4 xhr。status===200){ success success(xhr。response text);} }php后台数据
因为主要功能偏向前端,所以后端就通过本地文件载入的
?服务器端编程语言(Professional Hypertext Preprocessor的缩写)标题('内容类型:文本/html;charset=utf-8 ');$ num=$ _ GET[' num '];//api调用者传递的需要的图片页数$ img=文件(' img。txt’);//var _ dump($ img);$ array _ URL=array();对于($ I=0;$ I $ num $ I){ $ URL=array _ rand($ img);array_push($array_url,$ img[$ URL]);} $ a=JSON _ encode($ array _ URL);echo $ a;
总结
以上所述是小编给大家介绍的射流研究…通过创建交互式、快速动态网页应用的网页开发技术多列布局自动加载来实现瀑布流效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
版权声明:JS通过创建交互式、快速动态网页应用的网页开发技术多列布局自动加载实现瀑布流效果是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。