Я нашел этот удивительный фрагмент в интернете:
function f(a,b,c,d){for(d?d=b.toUpperCase():b=4;!d&&b--;d=(d=d.replace(/-(.)/g,f))in(new Image).style&&d)d=[['Moz-','Webkit-','Ms-','O-'][b]]+a;return d}
Он берет имя свойства css и автоматически добавляет правильный префикс поставщика.
Я немного поиграл с нимсделать его меньше:
function f(a,b,c){for(c?c=b.toUpperCase():b=4;!c&&b--;c=(c=c.replace(/-(.)/,f))in(new Image).style&&c)c=["Moz-","Webkit-","Ms-","O-"][b]+a;return c}
Я хотел бы передать его до 140 байт, но эта функция вызывает сама себя, что означает, что она загрязняет глобальное пространство имен переменной (f)
Как можноЯ изменил его, чтобы он не вызывал сам себя?
Вот jsfiddle: http://jsfiddle.net/vCkew/