想给页面产生一个折纸的效果吗?嫌麻烦?没关系,OriDomi帮你解决。
OriDomi提供了一组API,可以将DOM元素进行各种有趣的折纸效果。
如何使用
OriDomi主要面向支持CSS Transform效果的浏览器,在这一基础之上,你可以选用jQuery或直接使用浏览器的API,甚至直接使用选择器来初始化OriDomi:
var folded = new OriDomi(document.getElementsByClassName('paper')[0]); // 浏览器API来初始化 var folded = new OriDomi('.paper'); // 直接使用选择器 var $folded = $('.paper').oriDomi({/* options object */}); // 使用jQuery $folded.oriDomi('accordion', 20); // 折叠
非常简单。
为了方便将多个效果连放,OriDomi还可以将效果级联:
folded.curl(50).collapse().setSpeed(2000).stairs(-29).foldUp().unfold();
一隅实现
OriDomi是如何实现的?实际上如果只是简单的翻转,那么使用CSS的transform就够了,但是有趣的地方在于OriDomi的折叠,似乎并不在意你的DOM是什么样的结构。
简单的观察OriDomi之后可以发现,OriDomi实际上将你所要折叠的DOM复制了很多份,折叠效果的秘诀就在于,将多份同样的DOM翻转不同的角度,之后进行叠加,这样看起来就好像一个DOM被折叠起来。
许可证
OriDomi使用非常友好的MIT协议。