ajax无限加载数据

2019-06-22 19:34:15 阅读:2136

效果图如下(pc站也是可以用的):第一步:页面首先要先读取五条数据,这样不至于页面一打开是空的:$list=M('tableName')->limit(5)->select();第二步:写一个ajax页面或者方法,用来承载无限加载的数据(以下使用tp,并且每次加载5条的方法,你也可以改一下):publicfunctionajaxmore(){ $page=$_POST['page'];/*当前是第几页*/ $page_num=5;/*每次读取5条*/ $limit_first=($page-1)*$page_num; $limit_end=$page_num; $list=M('tableName')->limit($limit_first,$limit_end)->select(); if(!empty($list)){ $ary=$list; }else{ $ary=[]; } echojson_encode($ary); }第三步,页面引入jquery和iscroll.js,并且引入css来定位div,不然div乱跑咋办(这两个文件我会在文章末尾放百度云下载链接): #wrapper{ width:100%; position:absolute; left:0; top:40px; overflow:hidden; z-index:1; /*防止本机Windows上的触摸事件*/ -ms-touch-action:none; /*防止callouttap-hold和文本的选择*/ -webkit-touch-callout:none; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; /*防止文本调整取向变化对web应用程序很有用*/ -webkit-text-size-adjust:none; -moz-text-size-adjust:none; -ms-text-size-adjust:none; -o-text-size-adjust:none; text-size-adjust:none; } .pull-loading{ text-align:center; height:40px; line-height:40px; display:flex; align-items:center; justify-content:center; } 第四步:给需要拖动来加载数据的大div加一个id,id为wrapper第五步:给加载数据的div一个id,叫做scroller,注意,scroller的id必须放在wrapper的id里面第四步第五步的图如下:最后一步,使用ajax去调用上面写的方法: varmyscroll=newiScroll("wrapper",{ onScrollMove:function(){//拉动时 //上拉加载 if(this.y

js简单的计时器开始和结束

2019-06-20 20:08:39 阅读:2340

这个主要是自己用来做记录的,字母太长背不下来,不喜勿喷,我也知道很简单,单纯的想记下来而已。js里面setInterval和setTimeout相同点和区别相同点:两个方法都是先触发间隔时间,再触发回调函数区别:1.setInterval每隔指定的时间就执行一次表达式,若不停止会一直执行下去而setTimeout在执行时,是在载入后延迟指定时间后,去执行一次表达式,次数仅为一次2.将setTimeout包含于被执行函数中,然后在函数外再次使用setTimeout来达到定时执行的目的这样,函数外的setTimeout在执行函数时再次触发setTimeout从而形成周而复始的定时效果,但是这样每次时间就相当于延迟时间+函数执行时间,时间越久,误差越大;而setInterval是间隔时间去执行函数,并不会产生误差,setInterval适用于显示时间,精确度高。/*自动调用三秒刷新一次*/ vardoreload=self.setInterval("reloadorder()",3000); functionreloadorder(){ window.location.href=window.location.href; } /*停止计时器的方法*/ $(function(){ $('.a').click(funtion(){ clearInterval(reloadorder); }); })也还可以这样(下面这两行应该好理解一下):/*调用上面的方法*/ vardoreload=self.setInterval("reloadorder()",1500); /*清除上面的方法*/ clearInterval(doreload);两秒钟刷新一次页面:/*一分钟刷新一次本页面xuanfeng20190621*/ setTimeout(function(){ window.location.reload(); },2000);清除settimeout和setinterval的方法分别是:clearInterval(times);clearTimeout(buy_order);setinterval和settimeout设置方法分别如上面的例子

上报错误