Conversion does exactly what you say.
359deg 1deg. "rollover" 360deg 1deg, 361deg. , .
, :
var rot = 0;
, :
rot = 359;
// note the extra brackets to ensure the expression is evaluated before
// the string is assigned this is require in some browsers
element.style.transform = ("rotate( " + rot + "deg )");
, :
rot = 1;
element.style.transform = ("rotate( " + rot + "deg )");
. , , 360 0 , . , element.style.transform, rot, rot. , , :
var apparentRot = rot % 360;
, , , , , + 360:
if ( apparentRot < 0 ) { apparentRot += 360; }
, ( 360 ) . , , 0-360deg, . , + 360 , :
var aR,
nR,
rot;
if ( aR < 180 && (nR > (aR + 180)) ) {
rot -= 360;
}
if ( aR >= 180 && (nR <= (aR - 180)) ) {
rot += 360;
}
, rot:
rot += (nR - aR);
:
var el, rot;
function rotateThis(element, nR) {
var aR;
rot = rot || 0;
aR = rot % 360;
if ( aR < 0 ) { aR += 360; }
if ( aR < 180 && (nR > (aR + 180)) ) { rot -= 360; }
if ( aR >= 180 && (nR <= (aR - 180)) ) { rot += 360; }
rot += (nR - aR);
element.style.transform = ("rotate( " + rot + "deg )");
}
el = document.getElementById("elementYouWantToUse");
rotateThis(el, 0);
rotateThis(el, 359);
rotateThis(el, 1);
, , 0-359 .