2013-10-11 3 views
0

Я просто попытаюсь понять jQuery-Script, который я должен использовать.
Теперь я нашел следующий надрез:Используйте jQuery .on() с Modernizr.prefixed()

$currPage.addClass(outClass).on(animEndEventName, function() { 
    $currPage.off(animEndEventName); 
    endCurrPage = true; 
    if(endNextPage) { 
     onEndAnimation($currPage, $nextPage); 
    } 
}); 

Explenation, что я уже знаю:
$currPage: Это текущая страница. Это <div class="page">
endCurrPage: Это логическое значение, в стандартной ложной
endNextPage: сходно с endCurrPage

Мой вопрос .on(animEndEventName, часть. Переменная animEndEventName выглядит следующим образом:

var animEndEventNames = { 
    'WebkitAnimation' : 'webkitAnimationEnd', 
    'OAnimation' : 'oAnimationEnd', 
    'msAnimation' : 'MSAnimationEnd', 
    'animation' : 'animationend' 
}, 
animEndEventName = animEndEventNames[ Modernizr.prefixed('animation') ]; 

Этот код является Modernizr.prefixed(): http://modernizr.com/docs/#prefixed

JQuery в .on() ждать события, здесь animEndEventName. Итак, как это работает? Я не совсем понимаю эту часть ...

Надеюсь, вы можете мне помочь. Если вам нужно больше кода, просто скажите это. Но я думаю, что это важная часть.

EDIT:
здесь полный скрипт на GitHub по codrops https://github.com/codrops/PageTransitions/blob/master/js/pagetransitions.js

+0

Это нормальная переменная, которая назначается строке. Какую часть вы не понимаете? Вы спрашиваете, как работают объекты? Что возвращает 'Modernizr.prefixed()'? – SLaks

+0

Этот код пытается обойти тот факт, что 'Modernizr.prefixed()' не возвращает точное имя события. – SLaks

+0

Я не понимаю '.on (animEndEventName'. Я имею в виду с .on(), он просто ждет, пока действие будет запущено. Но animEndEventName - это переменная, которая не может быть запущена –

ответ

1

.on() принимает строку с именем события, чтобы добавить обработчик.

Он не знает и не заботится, передаете ли вы эту строку из переменной или строкового литерала.

+0

Обработчик для чего? Извините, я не знаю, почему я не понимаю понять его, на самом деле понять javascript/jquery, но знаю, что я не знаю ... –

+0

@ user2413035: Обработчик событий - функция для вызова всякий раз, когда возникает событие с этим именем. – SLaks

+0

Я не вижу никаких событий с этим именем ... Я добавил полный код к моему вопросу ... –

Смежные вопросы