0

我只是尝试理解我必须使用的 jQuery 脚本。
现在我找到了以下片段:

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

Explenation what I already know:
$currPage: 这是当前页面。It's a <div class="page">
endCurrPage: 这是一个标准的布尔值 false
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。那么这实际上是如何工作的呢?这部分我不是很明白...

我希望你能帮助我。如果您需要更多代码,请直接说出来。但我认为这是相关的部分。

编辑:
这里是 github 上的完整脚本,由 codrops https://github.com/codrops/PageTransitions/blob/master/js/pagetransitions.js

4

1 回答 1

1

.on()接受带有事件名称的字符串以添加处理程序。

它无法知道或关心您是从变量还是字符串文字传递该字符串。

于 2013-10-11T13:07:34.500 回答