У меня есть следующий код для вращения колеса с помощью JS и CSS:
var prefix = (function() {
if (document.body.style.MozTransform !== undefined) {
return "MozTransform";
}
else if (document.body.style.WebkitTransform !== undefined) {
return "WebkitTransform";
}
else if (document.body.style.OTransform !== undefined) {
return "OTransform";
}
else {
return "transform";
}
}()),
rotateElement = function(element, degrees) {
var val = "rotate(-" + degrees + "deg)";
element.style[prefix] = val;
element.setAttribute("data-rotation", degrees);
},
spinModifier = function() {
return Math.random() * 10 + 25;
},
modifier = spinModifier(),
slowdownSpeed = 0.5,
spinWheelfn = function(amt) {
clearTimeout(spinTimeout);
modifier -= slowdownSpeed;
if (amt == undefined) amt = parseInt(wheel.getAttribute('data-rotation'));
rotateElement(wheel, amt);
if (modifier > 0) {
spinTimeout = setTimeout(function() {
spinWheelfn(amt + modifier);
}, 1000 / 5);
} else {
modifier = spinModifier();
/**some other code...*/
}
};
Он отлично работает во всех браузерах , кроме для IE.
См. рабочую демонстрацию здесь: http://jsfiddle.net/maniator/H5LKy/129/
Как мне изменить мою функцию, чтобы при нажатии на "Spin Wheel" в IE, колесо вращалось правильно (и получить те же результаты)?