本文實例為大家分享了vue實現頁面滾動到底部刷新的具體代碼,供大家參考,具體內容如下
h5頁面
<script> var app = new Vue({ el: '#app', data: { swiper: null, carousel: [], promotion: [], cates: [], //設置size初始為10 size:10, }, mounted: function () { //定義that用that.size獲取size的值 var that=this; getPromotion(); //秒表每秒請求一次 setInterval(function(){ //content是div類名 const el = document.querySelector('.content'); const offsetHeight = el.offsetHeight; el.onscroll = () => { const scrollTop = el.scrollTop; const scrollHeight = el.scrollHeight; if ((offsetHeight + scrollTop) - scrollHeight >= -1) { //每次滾動到底部size+10 that.size+=10; } } $.ajax({ type: "post", url: "/news/search", data: {intro: 'best', page: 1, size: that.size}, dataType: 'json', success: function (data) { $.hideIndicator(); if (data.errCode === 1) { app.promotion = data.data.articleList; // console.log(222); } else { $.toast(data.errMsg); } } }); },10*60); // window.addEventListener('scroll', this.scrollBottom()); }, methods: { goDetail: function (id) { location.href = '/news/newsDetail/' + id; }, }, }); //第一次加載先獲取10條 function getPromotion() { $.ajax({ type: "post", url: "/news/search", data: {intro: 'best', page: 1, size: 10}, dataType: 'json', success: function (data) { $.hideIndicator(); if (data.errCode === 1) { app.promotion = data.data.articleList; // console.log(data); } else { $.toast(data.errMsg); } } }); $.showIndicator(); }</script>
后臺控制器
public function search() { $parm = array('act' => 'search'); if (!empty($_POST['catId'])) $parm['catId'] = $_POST['catId']; if (!empty($_POST['keyword'])) $parm['keyword'] = $_POST['keyword']; if (!empty($_POST['intro'])) $parm['intro'] = $_POST['intro']; if (!empty($_POST['order'])) $parm['order'] = $_POST['order']; if (!empty($_POST['sort'])) $parm['sort'] = $_POST['sort']; if (!empty($_POST['page'])) $parm['page'] =1; //獲取前臺傳過來的size值如果不為空就設置請求接口時多一個size參數 if (!empty($_POST['size'])) $parm['size'] = $_POST['size']; //調用接口 $data = $this->http('service/article.php', $parm); echo json_encode($data); }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。
|
新聞熱點
疑難解答