最赞回答 / qq_小石头_8
$.Deferred() 构造函数创建一个新的 Deferred(延迟)对象;一个 Deferred 对象开始于挂起状态。任何使用 deferred.then(), deferred.always(), deferred.done(), 或者 deferred.fail() 添加到这个对象的回调函数都是排队等待执行的;$.Deferred()就是为了让这些动作是有序执行的,执行玩一个在执行下一个
2017-04-28
最新回答 / 慕虎5292548
因为源地址的音乐不存在了,需要把音乐素材下载下来,在本地引入音乐文件,
playURl: 'music/happy.wav', // 正常播放地址 cycleURL: 'music/circulation.wav' // 正常循环播放地址
2017-04-26
与offset()不同的是:position()返回的是相对于被定位的祖辈元素的坐标,offset()返回的是相对于当前文档的坐标。
2017-04-24
deferred.then()
有时为了省事,可以把done()和fail()合在一起写,这就是then()方法。
$.when($.ajax( "/main.php" ))
.then(successFunc, failureFunc );
如果then()有两个参数,那么第一个参数是done()方法的回调函数,第二个参数是fail()方法的回调方法。如果then()只有一个参数,那么等同于done()。
有时为了省事,可以把done()和fail()合在一起写,这就是then()方法。
$.when($.ajax( "/main.php" ))
.then(successFunc, failureFunc );
如果then()有两个参数,那么第一个参数是done()方法的回调函数,第二个参数是fail()方法的回调方法。如果then()只有一个参数,那么等同于done()。
2017-04-22
推荐给大家的一片很好的文章:http://www.ruanyifeng.com/blog/2011/08/a_detailed_explanation_of_jquery_deferred_object.html
$.ajax()操作完成后,如果使用的是低于1.5.0版本的jQuery,返回的是XHR对象,你没法进行链式操作;如果高于1.5.0版本,返回的是deferred对象,可以进行链式操作。
$.ajax()操作完成后,如果使用的是低于1.5.0版本的jQuery,返回的是XHR对象,你没法进行链式操作;如果高于1.5.0版本,返回的是deferred对象,可以进行链式操作。
2017-04-22
这样写更加严谨:
function stratRun(options, runTime) {
var dfdPlay = $.Deferred();
// 恢复走路
restoreWalk();
// 运动的属性
$boy.transition(
options,
runTime,
'linear',
function() {});
return dfdPlay.promise(); // 返回promise对象
}
function stratRun(options, runTime) {
var dfdPlay = $.Deferred();
// 恢复走路
restoreWalk();
// 运动的属性
$boy.transition(
options,
runTime,
'linear',
function() {});
return dfdPlay.promise(); // 返回promise对象
}
2017-04-21