【发布时间】:2014-11-22 14:16:39
【问题描述】:
我正在使用 jQuery-ui 插件可旋转:
https://github.com/godswearhats/jquery-ui-rotatable
我的目标是有一个可旋转的父元素,并且子元素是反向旋转的,所以子元素看起来是不旋转的。
标记:
<div class="prop"> // Rotatable element
<div class="controls"> // Counter-rotated element
<span class="forward">Forward</span>
<span class="back">Back</span>
</div>
</div>
JS:
$('.prop').rotatable({
stop: function (element, ui) {
console.log(ui.angle.stop);
}
});
将 .prop 顺时针旋转一圈并停止每隔一段时间的日志:
0.8878111523002155
2.09755867669314
2.6773906348383703
3.3422210195600486
4.164313303696719
4.679676340815534
5.244536132588575
-0.6508896063585539
-0.19499934637089922
0.2217151122145471
问题是:angle 与度数 (360) 有何不同?以及如何计算孩子的 (.controls) 反向旋转,使其看起来固定?
我假设在 .rotate() 的“停止”回调中应用 css 转换是一个合适的解决方案,但我当然愿意接受任何其他建议。
到目前为止我有:
function getCounterRotation(angle){
return Math.floor(360 - angle * 6 * 10);
}
谢谢!
【问题讨论】:
-
数学正弦,余弦?只是大声思考......
-
另外,它甚至需要反旋转。将非旋转项目绝对定位为共享容器内的兄弟如何?
-
根据您的更新,我猜它使用的是弧度,而不是度数。
标签: javascript jquery jquery-ui rotation