이 지연을 수행하지만,이 끝날 때까지 스타일 변경 사항을 적용하지 않는 것 :jQuery 또는 CSS3 전환을 사용하여 CSS 상자 그림자 깊이를 어떻게 애니메이트합니까?
for (i=20;i>=0;i--) {
var boxShadow = i+"px "+i+"px "+i+"px #888";
$('article').css("box-shadow", boxShadow);
sleep(20);
}
function sleep(ms)
{
var dt = new Date();
dt.setTime(dt.getTime() + ms);
while (new Date().getTime() < dt.getTime());
}
이 전혀 지연을 적용하지 않습니다
for (i=20;i>=0;i--) {
var boxShadow = i+"px "+i+"px "+i+"px #888";
$('article').delay(500).css("box-shadow", boxShadow);
}
이 더 수행 할 수 있습니다 css3 전환으로 쉽게? 지연 샘플에서 약간의 작은 jquery 오류가 발생합니까?
도움을 주실 수있는 분들께 고맙습니다.
지연은 이미 CSS 전환의 일부입니다. '전환 : 속성 지속 시간 타이밍 기능 지연;'따라서 전환에 500ms 지연이 필요하다면이를 포함하면됩니다. 'transition : all 0.5s linear 500ms; – scurker
@scurker'setTimeout' 내부는'.removeClass()'이므로, 원래 상태로 되돌려 놓을 것입니다. 애니메이션이 지체없이 시작됩니다. 'setTimeout'의 타임 아웃은 CSS 전이 기간으로 설정되어 완전히 완료된 다음 원래 상태로 되돌아갑니다. – Jasper
원래의 질문을 잘못 읽었습니다. 가장 좋은 방법은 @keyframes를 사용하는 것입니다. 애니메이션을 코스를 실행 한 후에 원래 상태로 복원하려는 경우입니다. – scurker