Framework7刷新/重新加载

刷新或重新加载是一个特殊的组件, 用于通过拉动刷新(重新加载)页面内容。
句法:

< div class = "page"> < !-- Page content should have additional "pull-to-refresh-content" class --> < div class = "page-content pull-to-refresh-content" data-ptr-distance = "55"> < !-- Default pull to refresh layer--> < div class = "pull-to-refresh-layer"> < div class = "preloader"> < /div> < div class = "pull-to-refresh-arrow"> < /div> < /div> < !-- usual content below --> < div class = "list-block"> ...< /div> < /div>

【Framework7刷新/重新加载】以下是刷新组件中使用的类的列表:
页面内容:它还有一个附加的“刷新目录”类, 它是启用“刷新”所必需的。
pull-to-refresh-layer:这是一个隐藏层, 用于拉动以刷新视觉元素, 它只是一个预加载器和一个箭头。
data-ptr-distance =“ 55”:这是附加属性, 可让你设置自定义“拉动刷新”触发距离, 其默认值为44px。
拉刷新事件以下是一些“拉动刷新” JavaScript事件的列表:
指数 事件 描述 目标
1) pullstart 每当你开始拉动以刷新内容时, 它就会被触发。 拉至刷新内容。
2) pullmove 当你拉动刷新内容时触发。 拉至刷新内容。
3) pullend 每当你释放拉动刷新内容时, 它就会被触发。 拉至刷新内容。
4) refresh 当刷新刷新进入“刷新”状态时, 将触发此事件。 拉至刷新内容。
5) refreshdone 刷新后将触发它, 并返回到初始状态。这将在调用pullToRefreshDone方法之后完成。 拉至刷新内容。
以下是可与“拉到刷新”一起使用的App方法的列表:
指数 方法 描述
1) myApp.pullToRefreshDone(ptrContent) 它用于重置从上到下的内容。
2) myApp.pullToRefreshTrigger(ptrContent) 它用于触发刷新以刷新指定内容以刷新内容。
3) myApp.destroyPullToRefresh(ptrContent) 它用于销毁/禁用拉动以刷新指定的拉动以刷新内容。
4) myApp.initPullToRefresh(ptrContent) 它用于初始化/启用拉动以刷新内容。
Framework7刷新示例
让我们以一个示例来演示使用刷新组件来启动页面内容的刷新:
< !DOCTYPE html> < html> < head> < meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no, minimal-ui"> < meta name="apple-mobile-web-app-capable" content="yes"> < meta name="apple-mobile-web-app-status-bar-style" content="black"> < title> Pull To Refresh< /title> < link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css"> < link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css"> < /head> < div class="views"> < div class="view view-main"> < div class="pages"> < div data-page="home" class="page navbar-fixed"> < div class="navbar"> < div class="navbar-inner"> < div class="left"> < /div> < div class="center"> Pull To Refresh< /div> < div class="right"> < /div> < /div> < /div> < div class="page-content pull-to-refresh-content"> < div class="pull-to-refresh-layer"> < div class="preloader"> < /div> < div class="pull-to-refresh-arrow"> < /div> < /div> < div class="list-block media-list"> < ul> < li class="item-content"> < div class="item-media"> < img src="http://www.srcmini.com/framework7/images/apple.png" width="44"> < /div> < div class="item-inner"> < div class="item-title-row"> < div class="item-title"> apple< /div> < /div> < /div> < /li> < li class="item-content"> < div class="item-media"> < img src="http://www.srcmini.com/framework7/images/froots_img.jpg" width="44"> < /div> < div class="item-inner"> < div class="item-title-row"> < div class="item-title"> strawberry< /div> < /div> < /div> < /li> < li class="item-content"> < div class="item-media"> < img src="http://www.srcmini.com/framework7/images/mango.jpg" width="44"> < /div> < div class="item-inner"> < div class="item-title-row"> < div class="item-title"> Mango< /div> < /div> < /div> < /li> < /ul> < div class="list-block-label"> < p> Just pull page down to see the magic happen.< /p> < /div> < /div> < /div> < /div> < /div> < /div> < /div> < script type="text/javascript" src="http://img.readke.com/220423/0S15J5a-3.jpg"> < /script> < script> var myApp = new Framework7(); var $$ = Dom7; // Dummy Contentvar fruits = ['mango', 'orange', 'watermelon', 'banana']; // Pull to refresh contentvar ptrContent = $$('.pull-to-refresh-content'); // Add 'refresh' listener on itptrContent.on('refresh', function (e) {// Emulate 2s loadingsetTimeout(function () {var picURL = 'images/Fruit.jpg' + Math.round(Math.random() * 100); var fruit = fruits[Math.floor(Math.random() * fruits.length)]; var itemHTML = '< li class="item-content"> ' +'< div class="item-media"> < img src="http://www.srcmini.com/framework7/images/Fruit.jpg" width="44"/> < /div> ' +'< div class="item-inner"> ' +'< div class="item-title-row"> ' +'< div class="item-title"> ' + fruit + '< /div> ' +'< /div> ' + '< /div> ' + '< /li> '; // Prepend new list elementptrContent.find('ul').prepend(itemHTML); // When loading done, we need to reset itmyApp.pullToRefreshDone(); }, 2000); }); < /script> < /html>

    推荐阅读