javascript Slip.js如何实现手机网页整屏滑动特效
javascript Slip.js如何实现手机网页整屏滑动特效
有了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(); });
看,是不是很简单,是不是还没来得及抱怨这个需求,就已经完成它了,是不是有种前所未有的快感。
以上就是本文的全部内容,希望大家喜欢,这篇文章只是一个开始,之后会有更加全面精彩的文章等着大家,希望大家不要错过。