Сейчас конец 2015 года, и ситуация немного изменилась.Прежде всего, комментарий Макбрэйни о капитализации выше важен.Префикс webkit
теперь Webkit
, но, к счастью, только Safari используется на данный момент.И Chrome, и Firefox теперь поддерживают el.style.transform
без префикса, и я думаю, что IE тоже.Ниже приведено несколько более современное решение для поставленной задачи.Сначала он проверяет, нужно ли нам добавлять префикс нашего свойства transform:
var transformProp = (function(){
var testEl = document.createElement('div');
if(testEl.style.transform == null) {
var vendors = ['Webkit', 'Moz', 'ms'];
for(var vendor in vendors) {
if(testEl.style[ vendors[vendor] + 'Transform' ] !== undefined) {
return vendors[vendor] + 'Transform';
}
}
}
return 'transform';
})();
После этого мы можем просто использовать простой однострочный вызов для обновления свойства transform
элемента:
myElement.style[transformProp] = 'translate3d(0,' + dynamicY + 'px,0)';