Chr*_*rga 14 google-chrome rotation css3 css-animations
我认为这是最新Chrome(21.0.1180.57)中的一个错误,但我想我会在这里发帖只是为了仔细检查.
我正在使用javascript更改元素的旋转,并使用webkit过渡来为旋转设置动画.有时,根据开始和结束旋转,元素随着旋转随机缩放.我在这里做了一个演示:http://jsfiddle.net/XCwUQ/(点击正文).
有谁知道为什么会发生这种情况?
干杯,
基督教
更新:似乎现已在 Chrome 23 中修复。(请参阅@joequincy 对原始问题的评论)
\n\n确实,这看起来像是一个错误。在它被修复之前,您可以使用 jQuery 来解决animate()函数,如下所示:
$(function() {\n var rotation = 163;\n $(\'body\').on(\'click\', function() {\n rotation = (rotation == 163) ? 198 : 163; \n $(\'#wheel\').animate({\n borderSpacing: rotation\n }, {\n step: function(now, fx) {\n $(this).css(\'-webkit-transform\', \'rotate(\' + now + \'deg)\'); \n $(this).css(\'-moz-transform\', \'rotate(\' + now + \'deg)\'); \n $(this).css(\'-ms-transform\', \'rotate(\' + now + \'deg)\'); \n $(this).css(\'-o-transform\', \'rotate(\' + now + \'deg)\'); \n $(this).css(\'transform\', \'rotate(\' + now + \'deg)\'); \n }\n }); \n });\n});\xe2\x80\x8b\nRun Code Online (Sandbox Code Playgroud)\n\n去除transitionCSS 语句并添加:
border-spacing: 163px;\nRun Code Online (Sandbox Code Playgroud)\n\n这个例子滥用了border-spacing属性,因为它在大多数情况下不会影响您的布局。
看http://jsfiddle.net/hongaar/wLTLK/1/
\n\n(感谢这个答案:动画元素变换旋转)
\n\n注意:您可以选择使用 jQuery 转换插件来删除丑陋的多次css()调用并获得更简单的语法版本animate()(但会增加开销)。看https://github.com/louisremi/jquery.transform.js
| 归档时间: |
|
| 查看次数: |
370 次 |
| 最近记录: |