현재 실행중인 jQuery 애니메이션의 duration
을 두 가지 다른 값으로 변경할 수 있습니까?애니메이션 도중 jQuery의 애니메이션 지속 시간 변경
내가 직접 할당을 통해 duration
를 변경하려고했으나했습니다에는 성공하지 :
var timing = { duration: 4000 };
$(document).click(function (e) {
timing.duration = 1000;
});
$('#foo').animate({top:200, left:200}, timing);
... 심지어, 실행중인 애니메이션에 영향을주지 않습니다 fx.options.duration
step
에서 -method 변경 :
var state = false,
$(document).click(function (e) {
state = true;
});
$('#foo').animate({top:200, left:200}, {
duration: 4000,
step: function(now, fx){
if(state) fx.options.duration = 1000;
console.log(fx.options.duration); // 1000
}
});
여기 주위에 재생 fiddle입니다. 어떻게 할 수 있습니까?
jQuery 2.0에서 jQuery> = 1.7.2로 전환하면 다소 효과가 있습니다. jQuery 팀이 애니메이션 관련 기능에 수행 한 최근 변경 사항과 관련이 있다고 생각합니다. – Mahn
@Mahn 그래, 고마워! 나는 그것을 알아 차 렸습니다 ... 나는 지금 당장 중핵에 있고, 그것을 어떻게 만들어 내는지 알아 내려고 노력합니다! – yckart