Я новичок в Javascript и JQuery и нахожу скрипт, который меняет значения CSS 'transform', когда мышь перемещается в окне браузера, чтобы сделать перспективу изменения изображения.Javascript/jquery for array array
Все работает отлично! Я просто хочу оптимизировать javascript/jquery, чтобы уменьшить количество кода (поскольку я настроен на CSS -webkit- -moz- -ms- и т. Д.), А также упростить настройку скрипта.
Ok так вот часть, я хочу, чтобы оптимизировать:
$('#logo').css({
'-webkit-transform':
"rotateY("
+ (e.pageX-(current_width/2))/150 +
"deg) rotateX("
+ (e.pageY-(e.pageY*2-600)-(current_height/2))/300 +
"deg)",
'-moz-transform':
"rotateY("
+ (e.pageX-(current_width/2))/150 +
"deg) rotateX("
+ (e.pageY-(e.pageY*2-600)-(current_height/2))/300 +
"deg)",
'-ms-transform':
"rotateY("
+ (e.pageX-(current_width/2))/150 +
"deg) rotateX("
+ (e.pageY-(e.pageY*2-600)-(current_height/2))/300 +
"deg)",
'transform':
"rotateY("
+ (e.pageX-(current_width/2))/150 +
"deg) rotateX("
+ (e.pageY-(e.pageY*2-600)-(current_height/2))/300 +
"deg)",
});
Как вы можете видеть только изменение в каждом из 4-х центральных секций в CSS браузера отдельные элементы (-webkit-, -moz- , и т. д.), поэтому, естественно, я хочу создать массив, который будет содержать каждый из этих вариантов, а затем перебирать варианты.
Это моя первая попытка с помощью JavaScript «для» в цикле:
var browserTransitionCSS = [
'-webkit-transition',
'-moz-transition',
'-ms-transition',
'transition'
];
for(var i=0; i < browserTransformCSS.length; i++)
{
$('#logo').css({
browserTransformCSS:
"rotateY("
+ (e.pageX-(current_width/2))/150 +
"deg) rotateX("
+ (e.pageY-(e.pageY*2-600)-(current_height/2))/200 +
"deg)",
});
};
Это моя вторая попытка с помощью Jquery «каждый» в цикле:
var browserTransitionCSS = [
'-webkit-transition',
'-moz-transition',
'-ms-transition',
'transition'
];
$.each(browserTransitionCSS, function(something) {
$('#logo').css({
something :
"rotateY("
+ (e.pageX-(current_width/2))/150 +
"deg) rotateX("
+ (e.pageY-(e.pageY*2-600)-(current_height/2))/200
+ "deg)",
});
});
И теперь, после нескольких часов боюсь, я ухожу и спрашиваю, может ли кто-нибудь помочь мне.
Если было бы полезно, чтобы увидеть мой адрес, то, пожалуйста, спрашивайте.
Любая помощь здесь была бы очень признательна. Большое спасибо.
Хорошо, я все еще не совсем там, поэтому закодировал рабочий пример: http://jsfiddle.net/asy9u/5/. Любая помощь будет принята с благодарностью. –