zoukankan      html  css  js  c++  java
  • 使用Slip.js快速创建整屏滑动的手机网页

    原文  http://segmentfault.com/blog/laopopo/1190000000708417

    现在滑屏网页越来越多,比如我在搜狐视频就做了好几个,举个例子,可以用手机扫描以下的二维码访问:

    搜狐视频客户端完美适配iOS8

    之前写这样的页面可能还要纠结选择什么库,然后再写一堆 touch 的事件,再加上写样式写HTML,可能几个小时就这么过去,才算完成。

    现在不一样了。

    有了 Slip.js ,你只管写HTML,CSS,如果逻辑简单,一行JS代码就可以搞定,大大提升了开发的效率。不吹牛,上面的demo,不到半小时我就写好了。

    具体怎么做呢?比如有个需求是:

    我们有4个页面,每个页面有一张图片,每次手指滑动都切换一整屏。

    首先看HTML:

    <!doctype html>
    ...
    <script type="text/javascript" src="slip.js"></script>
    <body>
    ...
    <div id="container">
      <div class="page page-1"><img src="img/1.png"></div>
      <div class="page page-2"><img src="img/2.png"></div>
      <div class="page page-3"><img src="img/3.png"></div>
      <div class="page page-4"><img src="img/4.png"></div>
    </div>
    </body>
    

    再看CSS:

    /* 按自己需要来定义吧,不写也没关系 */
    

    最后看JS:

    var container = document.getElementById('container');
    var pages = document.querySelectorAll('.page');
    var slip = Slip(container, 'y').webapp(pages);
    

    就这么简单,可以查看 效果

    搜狐视频客户端完美适配iOS8

    解说:

    • Slip :暴露到全局的方法,只要你引入 slip.js ,就可以得到这个实用牛逼的方法。

    • container : 被滑动的容器,里面是每个滑动页面。

    • 'y' : 页面滑动的方向,你也可以传入 'x'

    • webapp : 设置页面展现为全屏滑动页面的方法。

    • pages : 页面元素列表。

    说好的一行代码搞定的:

    Slip(document.getElementById('container'), 'y').webapp();
    

    可以发现,上面的一行代码并没有定义 pages :

    webapp 方法不传递参数的时候,Slip会获取 container 的直接子元素(儿子元素)作为 pages

    至此,一个 全屏滑动网页 就完成了,难以想象的简单快速。我用半小时,你10分钟应该就可以。

    当然: Slip.js 还有很多更强大的功能,比如你可以自己定义页面滑动时要做什么,PM看你完成的这么快,就给你加了很有意思的需求:

    当页面滑动到最后一页的时候,刷新一下。。。

    你只需要加几行代码就可以搞定:

    Slip(document.getElementById('container'), 'y').webapp().end(function() {
      if (this.page === 3) location.reload();
    });
    

    看,是不是很简单,是不是还没来得及抱怨这个需求,就已经完成它了,是不是有种前所未有的快感。来看看 效果 吧。

    搜狐视频客户端完美适配iOS8

    注意:页数是从0开始的 ,所以上面的最后一页是3,而不是4。

    如果你看到了这里还没离开,我想你对 Slip.js 应该还是至少有点兴趣的,那么你可以去 Github 关注它。

    如果想迫切试用 Slip.js ,可以直接查看 文档

    如果想要看看 Slip.js 如何实现,可以查看 源码

    项目地址:http://binnng.github.io/slip.js/

    gitub下载地址:https://github.com/binnng/slip.js/tarball/master

  • 相关阅读:
    mongdb 备份还原导入导出
    mongodb副本集(选举,节点设置,读写分离设置)
    mongodb副本集的内部机制(借鉴lanceyan.com)
    sqlserver 登录记录(登录触发器)
    wmic命令用法小例
    mysql查询相关的命令解析
    学习笔记:APP 瘦身 & 增加bitcode支持编译第三方框架
    关于Git的一些学习笔记
    [转]Xcode中LLDB的使用
    Swift学习笔记(2):willSet与didSet
  • 原文地址:https://www.cnblogs.com/kt520/p/4028667.html
Copyright © 2011-2022 走看看