vue實(shí)現(xiàn)頁面滾動到底部刷新
本文實(shí)例為大家分享了vue實(shí)現(xiàn)頁面滾動到底部刷新的具體代碼,供大家參考,具體內(nèi)容如下
h5頁面
<script>
var app = new Vue({
el: '#app',
data: {
swiper: null,
carousel: [],
promotion: [],
cates: [],
//設(shè)置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值如果不為空就設(shè)置請求接口時(shí)多一個(gè)size參數(shù)
if (!empty($_POST['size'])) $parm['size'] = $_POST['size'];
//調(diào)用接口
$data = $this->http('service/article.php', $parm);
echo json_encode($data);
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Vue滾動頁面到指定位置的實(shí)現(xiàn)及避坑
- vue如何監(jiān)聽頁面的滾動的開始和結(jié)束
- vue監(jiān)聽頁面滾動到某個(gè)高度觸發(fā)事件流程
- vue添加錨點(diǎn),實(shí)現(xiàn)滾動頁面時(shí)錨點(diǎn)添加相應(yīng)的class操作
- vue中實(shí)現(xiàn)點(diǎn)擊按鈕滾動到頁面對應(yīng)位置的方法(使用c3平滑屬性實(shí)現(xiàn))
- vue中獲取滾動table的可視頁面寬度調(diào)整表頭與列對齊(每列寬度不都相同)
- vue頁面設(shè)置滾動失敗的完美解決方案(scrollTop一直為0)
相關(guān)文章
vue實(shí)現(xiàn)網(wǎng)絡(luò)圖片瀑布流 + 下拉刷新 + 上拉加載更多(步驟詳解)
這篇文章主要介紹了vue實(shí)現(xiàn)網(wǎng)絡(luò)圖片瀑布流 + 下拉刷新 + 上拉加載更多,本文分步驟通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01
如何在Vue中使localStorage具有響應(yīng)式(思想實(shí)驗(yàn))
這篇文章主要介紹了如何在Vue中使localStorage具有響應(yīng)式,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07
為vue中的data賦值computed計(jì)算屬性后,出現(xiàn)undefined原因及解決
這篇文章主要介紹了為vue中的data賦值computed計(jì)算屬性后,出現(xiàn)undefined原因及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07
Vue2.0實(shí)現(xiàn)自適應(yīng)分辨率
這篇文章主要為大家詳細(xì)介紹了Vue2.0實(shí)現(xiàn)自適應(yīng)分辨率,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11
VUE-Table上綁定Input通過render實(shí)現(xiàn)雙向綁定數(shù)據(jù)的示例
今天小編就為大家分享一篇VUE-Table上綁定Input通過render實(shí)現(xiàn)雙向綁定數(shù)據(jù)的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08
uni-app中App與webview雙向?qū)崟r(shí)通信詳細(xì)代碼示例
在移動應(yīng)用開發(fā)中,uni-app是一個(gè)非常流行的框架,它允許開發(fā)者使用一套代碼庫構(gòu)建多端應(yīng)用,包括H5、小程序、App等,這篇文章主要給大家介紹了關(guān)于uni-app中App與webview雙向?qū)崟r(shí)通信的相關(guān)資料,需要的朋友可以參考下2024-07-07

