为了更好的提升用户体验,移动端逐渐出了许多的移动端的框架,比如Sencha Touch、JQTouch、Jquery-moblie、jqMobi等等。这些框架都有优缺点,不同的框架应用在不同的项目中。现简单阐述一下各框架的优缺点: 一、Sencha Touch框架是一个重量级的框架、它上手较难,代码复杂,并且需要较强的程序基础才能学习,最开始的时候因为一个项目,想使用Sencha Touch框架,后来工期实在太紧张,根本没时间学习它并使用。所以最后转投其他框架。这个框架兼容性很高,运行起来的速度一般,需要长时间的学习且需要水平较高的程序基础才行。所以不太适合前端制作人员的使用。我会在以后的机会单开一篇关于它的使用demo。 二、JQTouch是一个轻量级框架、纯jquery写法,上手比较容易,代码容易理解,加载速度也很快,缺点是配合的移动端效果插件较少,需要很多外部的插件相结合,另外,个别插件还需要解决与框架之间的兼容问题。它的最大的一个弊端就是可利用和变通的布局较少。 三、Jquery-moblie也是一个轻量级框架、纯jquery写法,上手容易,代码容易理解,但由于其绑定的前端效果插件过多,且代码结构有些臃 肿,造成加载速度很慢。尤其是在android系统上测试,速度很慢。用户体验效果不太好,它比较适合开发IPAD或是IOS系统的高端机型。 四、jqMobi也是一个轻量级框架、它的语言基于jquery语言。并对其进行了简化,更有利于在移动设备上进行应用,并且速度很流畅。上手也比较容…
使用Skrollr创建视差滚动效果页面
视差滚动(Parallax Scrolling)是指多层背景以不同的速度移动,形成立体的运动效果,带来非常出色的视觉体验。随着用户对视觉体验的要求不断提高,WEB开发者开始 在网页中加入各种特效元素以满足用户的需求。今天这篇文章给大家推荐一个优秀的视差动画Javascript库——Skrollr.js
Skrollr是一个使用了HTML5和CSS3的轻量级JavaScript视差滚动类库。它是不依赖于其它框架的独立类库,可以让你快速打造出 视差滚动效果。它可以让我们给任意元素设置关键帧的CSS属性,然后它会自动形成动画效果。更重要的一点是,使用此类库时不用写复杂的JS代码以及兼容主 流浏览器,适配手机等移动终端等特性。
如何使用?
首先在页面</body>前加入skrollr库,可以在https://github.com/Prinzhorn/skrollr#rd下载到最新的库文件。然后使用skrollr.init()调用skrollr库。
<script type="text/javascript" src="skrollr.min.js"></script> <script type="text/javascript"> var s = skrollr.init(); </script> </body>
接着,我们来演示下页面元素背景颜色变化效果。当用户向下滚动页面500像素时,div的背景色由#00f渐变为#f00。
<div data-0="background-color:rgb(0,0,255);" data-500="background-color:rgb(255,0,0);">WOOOT</div>
请看演示:demo1
注意,不能使用#00f或者#0000ff来定义背景颜色,应该使用rgb来定义颜色值,当然你不必担心低版本的ie浏览器不支持rgb,skrollr已经做了兼容性处理。
下面我们来看下转动效果,使用transform:rotate(0deg)可以让页面元素产生转动,下面的演示当滚动页面时div会做360度转动效果。
<div data-0="background-color:rgb(0,0,255);transform:rotate(0deg);" data-500="background-color:rgb(255,0,0);transform:rotate(360deg);">WOOOT</div>
请看演示:demo2
skrollr库还提供了非线性动画调用及弹性缓冲效果,可以使用easings选项中的缓存函数如:bounce,swing等。
<div data-0="background-color:rgb(0,0,255);transform[bounce]:rotate(0deg);" data-500="background-color:rgb(255,0,0);transform[bounce]:rotate(360deg);">WOOOT</div>
请看演示:demo3
接下来我们把“data-500”换成了“data-top”!skrollr不仅可以处理绝对位置,也可以处理相对位置!
<div data-0="background-color:rgb(0,0,255);transform[bounce]:rotate(0deg);" data-top="background-color:rgb(255,0,0);transform[bounce]:rotate(360deg);">WOOOT</div>
请看演示:demo4
从上面几个例子中我们可以看出,使用元素的属性:data-xxx,添加多个这样的属性,skrollr居然可以自动创建动画过程。
在设置data-xxx时,skrollr提供了相对(relative)和绝对(absolute)视图两种方法,请看图解:
Skrollr提供了丰富的使用说明文档,以及javascript方法解说,详情可以阅读项目官网:https://github.com/Prinzhorn/skrollr,同时本站将会推出更丰富的Skrollr应用效果页面讲解文章,敬请期待!