<!DOCTYPE html> <html xmlns:v-on="http://www.w3.org/1999/xhtml" xmlns:v-bind="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> <meta name="format-detection" content="telephone=no"> <title>小白听营销</title> <link href="dist/css/icons.css" rel="stylesheet"> <link href="dist/css/mui.css" rel="stylesheet"> <link href="dist/css/app.css" rel="stylesheet"> </head> <body> <header class="mui-bar mui-bar-nav"> <div id="go-search" class="searchbar searchbar-block"> <div class="searchbar-input"><i class="icon-search"></i><span>搜索感兴趣的人</span></div> </div> </header> <div class="mui-content" id="app2"> <div class="title">热门名人</div> <scroller :on-refresh="refresh" :on-infinite="infinite" ref="my_scroller" style="padding-top: 44px;"> <ul class="mui-table-view tutor-list mar-top-none" v-for="user in users"> <li class="mui-table-view-cell mui-media media-middle"> <a > <div class="mui-media-object mui-pull-left verified"> <img src="dist/img/thumbnail.png" > </div> <div class="mui-media-body"> {{user}} <p class="mui-ellipsis">经理</p> <p>110个回答,110人关注</p> </div> <span class="mui-btn ask-btn"><i class="icon-ask-line"></i> 问问</span> </a> </li> </ul> </scroller> </div> <script src="dist/js/jquery.min.js"></script> <script src="dist/js/mui.min.js"></script> <script src="dist/vue/vue.js"></script> <script src="dist/vue/vue-resource.js"></script> <script src="dist/vue/vue-scroller.min.js"></script> <script src="dist/vue/public.js"></script> <script src="dist/request/testLoadMore.js"></script> <script> /* mui('.mui-scroll-wrapper').scroll();*/ document.getElementById('go-search').addEventListener('tap', function() { mui.openWindow({ url: 'search.html' }); }); </script> </body> </html>
testLoadMore.js
/** * Created by 细福 on 2017/4/13. */ var me=new Vue({ el:"#app2", data:{ users:[], totalCount:0, pageIndex:1, pageSize:10, noData:false }, mounted:function () { console.log("mounted..........") this.addData(); }, methods:{ addData:function () { if(this.pageIndex==1){ this.users.splice(0,this.users.length); } for (var i = 0; i < 10; i++) { this.users.push((this.users.length ) + ""); } if(this.pageIndex==1){ this.$refs.my_scroller.finishPullToRefresh(); this.noData=false; }else{ if(this.users.length>=20) { this.noData = true; } setTimeout(() => { this.$refs.my_scroller.finishInfinite(0); }) } }, refresh: function () { setTimeout(()=> { this.pageIndex=1; this.addData(); }, 1500) }, infinite: function () { if(this.noData){ setTimeout(() => { this.$refs.my_scroller.finishInfinite(2); }) return; } setTimeout(() => { this.pageIndex+=1; this.addData(); }, 1500) } } });
相关推荐
组件提供了`@scroll`、`@scroll-end`等事件,允许你监听用户的滚动行为,以便实现如无限滚动加载更多数据等功能。 **自定义渲染** 如果默认的渲染方式不能满足需求,Vue Virtual Scroller允许你通过`item-template`...
`vue-scroller`是一个用于实现滚动功能的Vue组件,它提供了类似iscroll的功能,包括弹性滚动、上拉加载更多等。在本文中,我们将探讨如何利用`vue-scroller`和Vue Router来记录并恢复滚动位置,以及一些关键的代码...
这些库提供了更方便的API,简化了下拉刷新和上拉加载更多的实现。 在项目结构中,`AndroidManifest.xml`文件包含了应用的元数据,如应用名、权限和Activity声明。`res`目录存储了应用的资源,如布局XML、图标、字符...
VueScroller正是基于这些特性,为Vue开发者提供了一种简单且强大的解决方案,来实现列表的流畅滚动、下拉刷新以及自动加载更多内容的功能。 首先,我们来详细了解一下VueScroller的主要功能和工作原理: 1. **下拉...
虚拟列表实现无限加载在进行前端业务开发时,很容易遇到需要加载巨大列表的场景,比如微博的信息流、微信的朋友圈和直播平台的聊天框,这些列表通常具有两个显着的特点不能分页只要用户愿意就可以无限的滚动下去在...
在移动端开发中,下拉刷新和上拉加载是常见的功能,用于优化用户体验,及时更新列表内容...希望这篇文章对你在学习和工作中有所帮助,如果你需要更多关于 Vue.js 或者 `vueScroll` 的知识,请继续关注相关教程和文档。
在`handleScroll` 方法中,当确定已经滚动到页面底部且列表数据长度不为0时,应当执行加载更多数据的操作。这里`this.list.length !== 0` 是一个基本的校验条件,防止在列表数据为空时仍然触发加载,避免无谓的...
Vue.js 无限滚动列表是一种常见的前端技术,用于处理大数据量的列表展示,特别是在网页滚动时动态加载更多数据。由于直接渲染大量DOM元素会导致性能下降,所以需要进行优化以提高用户体验。本文将详细介绍Vue.js实现...
随着前端技术的快速发展,Vue.js 成为了很多开发者首选的框架,无论是Web项目、网站制作,还是APP和小程序开发,Vue都表现出强大的适应性和便捷性。相比传统方式,Vue简化了DOM操作,降低了维护成本,尤其在大型项目...
Vue 2.6.1是目前稳定版,相比早期版本如1.1.x,它带来了更多改进和优化。 总的来说,Vue.js 结合了Angular.js的结构和React.js的组件化思想,提供了一个轻量级、高性能的前端开发解决方案,尤其适合构建单页应用...
需要注意的是,上拉加载更多功能的实现依赖于后端接口的支持,后端需要根据传入的页码参数返回对应的数据列表。同时,前端开发人员需要处理加载失败或无数据可加载的情况,可以通过设置相应的状态变量和提示信息来...
Vue.js 前端面试题及答案解读 ...本文对2023前端vue面试题及答案进行了详细的解读,涵盖了Proxy的使用、Slot的理解和使用场景、优化大数据渲染的思路等多个方面,旨在帮助读者更好地理解Vue.js前端技术。
我们可以在el-select组件上使用这些库,通过监听滚动事件来动态加载更多数据。 以下是一些关键步骤: 1. **安装依赖**:确保已经安装了Vue3、Element Plus以及虚拟滚动库。例如,对于vue3-virtual-scroll-list,...
8. **交互设计**:除了基本的显示功能,还可以添加更多的交互设计,如排序、筛选、分页等功能,进一步提升用户体验。 在文件`jiaoben8063`中,可能包含了实现上述功能的HTML结构、Vue组件代码、CSS样式和可能的...
- 无更多数据提示:当所有数据加载完毕后,显示“没有更多数据”提示,避免用户无效操作。 总结,上拉加载更多是现代UI设计中不可或缺的一部分,它提升了用户体验,有效解决了大数据量分页显示的问题。开发者应...
"动感滑屏"和"加载更多"特效正是为了提供这种体验而设计的。本文将深入探讨这两个概念,以及它们如何增强用户界面(UI)和用户体验(UX)。 首先,我们来理解"动感滑屏"。动感滑屏是一种交互式的UI设计,它允许用户...
更多数据 ] } } ``` 然后在模板中,我们可以通过 `v-for` 指令将数据渲染到表格中: ```html <el-table :data="tableData"> <el-table-column prop="date" label="日期" width="180"></el-table-column> <!-- ...
当然,实际项目中可能需要考虑更多细节,如数据的预加载、列表项的动画效果、滚动的平滑处理等。此外,还有一些第三方库,如`vue-virtual-scroller`或`vue-virtual-scroll-list`,它们提供了更完善的虚拟列表解决...
在前端开发中,常见的库和框架如jQuery、React、Vue和Angular都有对应的插件或组件支持“加载更多”的实现。例如,jQuery有 Infinite Scroll 插件,React有 react-infinite-scroller 组件等。这些库提供了丰富的配置...
比如jQuery的`$.ajax`和`$(window).scroll()`方法,Vue.js的`v-infinite-scroll`指令,以及React的`react-infinite-scroller`等组件库,可以帮助开发者快速实现下拉刷新和上拉加载更多功能。 总结: "下拉刷新"和...