我正在研究某种特殊指南针。
该项目工作得非常好,在这个问题上也没有那么重要,因为我只是在项目的一个部分遇到了大问题:
我的代码返回的计算角度可能是(-360到360之间的值):
-318°, -29°, 223°, -163°, ...
由于我的奇怪(但工作)计算,我没有从 0°到360°获得角度,但是例如我得到 42°到-317°之间的值< / strong>或 25°至-334°。
对于旋转特定旋转的图像,此行为不会导致问题,因为 -317°与 42°相比,与圆形旋转几乎相同。
我的问题:对于我的项目,现在重要的是让旋转处于默认角度,例如0% to 100%
(如0°-360°)。我怎样才能获得这些角度范围呢?
function rotate(val) {
div.style.transform = "rotate("+val+"deg)"
div.innerHTML = val + "°"
}
rotate(26)
div {
position: fixed;
left: 50%;
top: 10%;
margin-left:-30px;
background: black;
font-family: Helvetica Neue;
font-size: 30px;
height: 60px;
width: 60px;
color: white;
line-height: 160%;
text-align: center;
}
<p><b>(!) Try</b>: Input "25" and "-334"</p>
<input type="number" value="25" onchange="rotate(this.value)" placeholder="input degree">
<div id="div">[]</div>
我的问题:如何以百分比(从0%-100%)计算图像的旋转?
编辑:只需使用
var percentageRotation = myweirdrotation/3.6
根本无法解决问题。它不会输出0到100之间的值。内部也有这种奇怪的“跳跃”。
答案 0 :(得分:0)
我在自己身上找到了解决方案
使用此代码可以完成这项工作:
var rot = (myweirdrotation%360) / 3.6