Morphext是一款简单、高性能和跨浏览器的jQuery文字动画插件。该插件基于 Animate.css 。你可以设置使用多个不同的句子,Morphext会以你指定的CSS动画方式轮流显示它们。Morphext所做的事情是隐藏前一个文本短句,然后使用下一个来替换它。插件中已经为跨浏览器处理好了所有浏览器厂商的前缀问题,它可以为我们提供非常酷的文字动画效果。
使用方法
首先要在页面中引入jQuery文件和 Animate.css 文件以及 morphext.min.js和morphext.css文件。
将你想要动画的文字句子封装到一个元素中,并且用逗号隔开每一个句子。
I am a So Simple, Very Doge, Much Wow, Such Cool Text Rotator
然后可以在元素上调用Morphext()
方法来启用插件:
$("#js-rotating").Morphext();
可用参数
- animation:类型:string,CSS动画的类型,可以是 Animate.css 中任何一种可用的动画类型。默认值:bounceIn。
- separator:类型:string,用于分割句子字符串的符号。可以改变这个符号,例如使用"|":
So Simple | Very Doge | Much Wow | Such Cool
。默认值:,
- speed:类型:int,文字动画的时间间隔,单位毫秒,默认值2000。
下面是一个例子:
$("#js-rotating").Morphext({ animation: "fadeIn", // Overrides default "bounceIn" separator: "|", // Overrides default "," speed: 3000 // Overrides default 2000 });
该文字动画插件在很大程度上依赖于Animate.css来制作两个句子之间的平滑高质量的过渡动画。默认的动画速度可以通过CSS来修改:
#yourElement, .yourClass { /* Overrides Animate.css 1s duration */ -vendor-animation-duration: 3s; }
一些问题
Animate.css的一些动画效果如"up"或"down"可能会超出窗口,这不是一个bug,解决的方法是在其父元素中使用overflow: hidden;
。
插件中需要使用js来添加或移除Animate.css的class来执行相应的动画效果,如果浏览器不支持js,那么将看不到任何效果。
Animate.css依赖于CSS3 animations和transformations。如果浏览器不支持CSS3,该插件仍然会进行句子转换,但是没有动画效果,插件中没有提供回退的方法,如果你需要回退,可以使用Modernizr来编写回退的方法。