vue滚动加载更多,回到顶部
watch: { orderData (val) { this.$nextTick(() => { // 数据变动 且渲染完成后 this.pageHeight = document.querySelector('html').scrollHeight this.viewHeight = document.querySelector('html').clientHeight if (this.lastPage) { this.loading = false } else { this.loading = true } }) }, // 监听滚动加载下一页 scrollTop (val) { if (this.loading && this.pageHeight > 0 && !this.lastPage) { if (this.pageHeight - this.viewHeight - val < this.distance) { this.loading = false this.pageNum++ this.getOrder() } } } },
created () { document.addEventListener('scroll', this.scroll, false) }, beforeDestroy () { document.removeEventListener('scroll', this.scroll) }, scroll (e) { this.scrollTop = document.body.scrollTop || document.documentElement.scrollTop },
created(){ document.addEventListener('scroll', this.scrollT, false) },
//回到顶部 goTop() { let scrollToTop = window.setInterval(()=>{ let Top = document.documentElement.scrollTop || document.body.scrollTop if(Top>0){ window.scrollTo( 0, Top - 80) }else{ window.clearInterval( scrollToTop ); } },10) },