标签:style blog http color io java strong ar 数据
/*------通过Modernizr处理获得Css3结束的事件名-------*/ var animEndEventNames = { ‘WebkitAnimation‘ : ‘webkitAnimationEnd‘, ‘OAnimation‘ : ‘oAnimationEnd‘, ‘msAnimation‘ : ‘MSAnimationEnd‘, ‘animation‘ : ‘animationend‘ }; this.animEndEventName = animEndEventNames[Modernizr.prefixed(‘animation‘)]; $("#Elemen").addClass("pt-page-current").addClass(optionClass.inClass).on(_this.animEndEventName, function() { $(nextEle).off(_this.animEndEventName); _this.endWithAnimationInit($(currentEle),$(nextEle)); _this.removeWithAnimationClass($(currentEle),$(nextEle),optionClass); /*******开始ajax加载数据(设置图片阴影的效果)********/ _this.GestureAjax(_this.defaultOptions.nextJspPage,_this.defaultOptions.requestAjaxJsp); });
Animate
、Ajax
: ,如下:// animate $(‘.box‘) .animate({‘opacity‘: 0}, 1000) .promise() .then(function() { console.log(‘done‘); }); // ajax $.ajax(options).then(success, fail); $.ajax(options).done(success).fail(fail); // ajax queue $.when($.ajax(options1), $.ajax(options2)) .then(function() { console.log(‘all done.‘); }, function() { console.error(‘There something wrong.‘); });
Deferred的定义:
同步多个动画
动画是另一个常见的异步任务范例。 然而在几个不相关的动画完成后执行代码仍然有点挑战性。
尽管在jQuery1.6中才提供了在动画元素上取得promise对象的功能,但它是很容易的手动实现:
$.fn.animatePromise = function( prop, speed, easing, callback ) { var elements = this; return $.Deferred(function( defer ) { elements.animate( prop, speed, easing, function() { defer.resolve(); if ( callback ) { callback.apply( this, arguments ); } }); }).promise(); }; var fadeDiv1Out = $( "#div1" ).animatePromise({ opacity: 0 }), fadeDiv2In = $( "#div1" ).animatePromise({ opacity: 1 }, "fast" ); $.when( fadeDiv1Out, fadeDiv2In ).done(function() { /* both animations ended */ });
----文章推荐---:
标签:style blog http color io java strong ar 数据
原文地址:http://www.cnblogs.com/Kummy/p/3948191.html