2010-07-14 2 views
2

사용 : 앞에 추가를는 jQuery를 : 지연() 및 앞에 추가() 마지막 줄은 내 방식으로 작동하지 않는 다음 코드에서

$('button.goal').click(function() { 
$('div.scorer_away').animate({ 
    width: 'hide', 
    opacy: 'hide' 
    }, 'slow') 
.delay(2500) 
.animate({ 
    width: 'show', 
    opacy: 'show' 
    }, 'slow'); 
$('span.scorer_away').delay(3000).prepend('<img src="chofbauer.png" alt="" />'); 

가 어떻게 작동 할 수 있습니다을 그()는 - 기능 추가 새 이미지는 3 초 후에 나타납니다 (컨테이너가 2,5 초 후에 img 앞에 숨겨 짐).

답변

1

.delay()은 jQuery fx methods에서만 작동합니다. .prepend()은 그 중 하나가 아닙니다.

당신은 실제로 당신이 "깨끗한"솔루션을 .queue() 자신을 만들 것

$('span.scorer_away').delay(3000).show(1, function(){ 
    $(this).prepend('<img src="chofbauer.png" alt="" />'); 
}); 

처럼 해결할 수 있습니다.

해당 작업을 수행하는 또 다른 방법은 javascript native setTimeout()을 사용하는 것입니다.

setTimeout(function(){ 
    $('span.scorer_away').prepend('<img src="chofbauer.png" alt="" />'); 
}, 3000); 
+0

들으은,이 작품! – Simon

0

당신은 setTimeout를 사용하여 시도 할 수 :

function myfunc() { $('span.scorer_away').prepend('<img...>') }; 
setTimeout(myfunc, 3000); 
관련 문제