我的网页上有两个div,A和B. Div A可见,Div B隐藏.
当用户点击div A中的链接时,我想在屏幕上“滑动”div A(通过左边缘离开),并在屏幕上滑动div B(通过右边缘进入).
我发现ipad上的jquery动画非常慢,所以我想使用webkit CSS动画代替,我相信它是用硬件渲染的.我该怎么做呢?
解决方法
下面是一个示例,说明如何使用webkit动画执行此操作.您可能还会阅读本文以获取更多背景信息:
http://webkit.org/blog/138/css-animation/
圆角只是为了表明页面正在移出屏幕,而不仅仅是改变宽度.
主要思想是为左侧CSS属性设置动画并使用容器div进行剪裁.
<!DOCTYPE html> <html> <head> <style> div { width: 50px; height: 50px; -webkit-border-radius: 15px; } #left { position: absolute; background-color: blue; -webkit-transition: left 1s ease-in; } #right { position: absolute; left: 50px; background-color: green; -webkit-transition: left 1s ease-in; } #left.animate { left: -50px; } #right.animate { left: 0px; } #container { position: relative; overflow:hidden; } </style> <script> function animate() { document.getElementById('left').className = 'animate'; document.getElementById('right').className = 'animate'; } </script> </head> <body> <div id='container'><div id='left'></div><div id='right'></div></div> <input type='button' onclick='animate();' value='Animate!'></input> </body> </html>