javascript Slip.js实现整屏滑动的手机网页


Posted in Javascript onNovember 25, 2015

有了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>

最后看JS:

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

解说:

  • 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();
});

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

以上就是本文的全部内容,希望大家喜欢,这篇文章只是一个开始,之后会有更加全面精彩的文章等着大家,希望大家不要错过。

Javascript 相关文章推荐
JavaScript OOP面向对象介绍
Dec 02 Javascript
Js日期选择自动填充到输入框(界面漂亮兼容火狐)
Aug 02 Javascript
JS关闭窗口或JS关闭页面的几种代码分享
Oct 25 Javascript
点击按钮自动加关注的代码(sina微博/QQ空间/人人网/腾讯微博)
Jan 02 Javascript
微信小程序 支付功能开发错误总结
Feb 21 Javascript
javascript实现下雨效果
Mar 27 Javascript
ES6新特性之数组、Math和扩展操作符用法示例
Apr 01 Javascript
简单实现jquery隔行变色
Nov 09 jQuery
vue2.0安装style/css loader的方法
Mar 14 Javascript
angular项目中bootstrap-datetimepicker时间插件的使用示例
Mar 15 Javascript
微信小程序websocket实现聊天功能
Mar 30 Javascript
vue中使用rem布局代码详解
Oct 30 Javascript
javascript巧用eval函数组装表单输入项为json对象的方法
Nov 25 #Javascript
javascript数据结构之双链表插入排序实例详解
Nov 25 #Javascript
js获取图片宽高的方法
Nov 25 #Javascript
javascript数据结构之二叉搜索树实现方法
Nov 25 #Javascript
javascript常用经典算法实例详解
Nov 25 #Javascript
javascript实现很浪漫的气泡冒出特效
Sep 05 #Javascript
jQuery插件jquery-barcode实现条码打印的方法
Nov 25 #Javascript
You might like
Yii Framework框架获取分类下面的所有子类方法
2014/06/20 PHP
laravel安装zend opcache加速器教程
2015/03/02 PHP
修改PHP脚本使WordPress拦截垃圾评论的方法示例
2015/12/10 PHP
Laravel访问出错提示:`Warning: require(/vendor/autoload.php): failed to open stream: No such file or di解决方法
2019/04/02 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
2020/02/21 PHP
laravel数据库查询结果自动转数组修改实例
2021/02/27 PHP
JavaScript 内置对象属性及方法集合
2010/07/04 Javascript
求数组最大最小值方法适用于任何数组
2013/08/16 Javascript
如何通过javascript操作web控件的自定义属性
2013/11/25 Javascript
js实现简单随机抽奖的方法
2015/01/27 Javascript
bootstrap3 兼容IE8浏览器!
2016/05/02 Javascript
JQuery点击行tr实现checkBox选中的简单实例
2016/05/26 Javascript
jQuery实现加入收藏夹功能(主流浏览器兼职)
2016/12/24 Javascript
浅谈JavaScript的innerWidth与innerHeight
2017/10/12 Javascript
详细分析JS函数去抖和节流
2017/12/05 Javascript
浅谈用Webpack路径压缩图片上传尺寸获取的问题
2018/02/22 Javascript
JS中的算法与数据结构之集合(Set)实例详解
2019/08/20 Javascript
JavaScript中判断为整数的多种方式及保留两位小数的方法
2019/09/09 Javascript
Vue过渡效果之CSS过渡详解(结合transition,animation,animate.css)
2020/02/05 Javascript
vue通过接口直接下载java生成好的Excel表格案例
2020/10/26 Javascript
[46:00]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#4EG VS Fnatic第一局
2016/03/03 DOTA
基于Python实现的扫雷游戏实例代码
2014/08/01 Python
python清除字符串里非字母字符的方法
2015/07/02 Python
Python中使用Queue和Condition进行线程同步的方法
2016/01/19 Python
python实现报表自动化详解
2017/11/16 Python
Python实现PS滤镜碎片特效功能示例
2018/01/24 Python
Python 使用Opencv实现目标检测与识别的示例代码
2020/09/08 Python
css3 给页面加个半圆形导航条主要利用旋转和倾斜样式
2014/02/10 HTML / CSS
基于css3 animate制作绚丽的动画效果
2015/11/24 HTML / CSS
迪奥美国官网:Dior美国
2019/12/07 全球购物
2014党委书记四风问题对照检查材料思想汇报
2014/09/22 职场文书
2014年后勤管理工作总结
2014/12/01 职场文书
给老婆道歉的话
2015/01/20 职场文书
python中pandas对多列进行分组统计的实现
2021/06/18 Python
nginx中proxy_pass各种用法详解
2021/11/07 Servers
django项目、vue项目部署云服务器的详细过程
2022/07/23 Servers