몇 초 후에 div 숨기기
몇 초 후에 어떻게 디브를 숨길 수 있을까요?예를 들어 Gmail의 메시지와 같습니다.
최선을 다했지만 작동이 안 됩니다.
이렇게 하면 1초(1000밀리초) 후에 div가 숨겨집니다.
setTimeout(function() {
$('#mydiv').fadeOut('fast');
}, 1000); // <-- time in milliseconds
#mydiv{
width: 100px;
height: 100px;
background: #000;
color: #fff;
text-align: center;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="mydiv">myDiv</div>
색이 바래지 않고 숨기려면 다음을 사용합니다.hide()
.
사용할 수 있습니다..delay()
$(".formSentMsg").delay(3200).fadeOut(300);
div를 호출하여 지연 시간을 밀리초 단위로 설정하고 변경할 속성을 설정합니다. 이 경우 애니메이션이 가능하도록 .fadeOut()을 사용했지만 .hide()도 사용할 수 있습니다.
jquery는 간격 타이머 또는 기타 이벤트 핸들러를 설정하거나 나중에 삭제 또는 재설정할 필요가 없는 시간 지정 방식으로 div를 숨길 수 있는 다양한 방법을 제공합니다.여기 몇 가지 예가 있습니다.
순수한 숨김, 1초 지연
// hide in one second
$('#mydiv').delay(1000).hide(0);
순결한 가죽, 지연 없음
// hide immediately
$('#mydiv').delay(0).hide(0);
애니매이션
// start hide in one second, take 1/2 second for animated hide effect
$('#mydiv').delay(1000).hide(500);
사라지다, 사라지다
// start fade out in one second, take 300ms to fade
$('#mydiv').delay(1000).fadeOut(300);
또한 메소드는 대기열 이름 또는 함수를 두 번째 매개 변수로 사용할 수 있습니다(메소드에 따라 다름).위의 모든 통화 및 기타 관련 통화에 대한 문서는 https://api.jquery.com/category/effects/ 에서 확인할 수 있습니다.
정말 간단한 방법이 있습니다.
문제는 .delay가 애니메이션에만 영향을 미치기 때문에 .hide()를 애니메이션처럼 동작시켜 지속 시간을 지정하는 것입니다.
$("#whatever").delay().hide(1);
짧은 지속시간을 주기 때문에 일반 .hide 함수와 마찬가지로 즉각적인 것으로 표시됩니다.
$.fn.delay = function(time, callback){
// Empty function:
jQuery.fx.step.delay = function(){};
// Return meaningless animation, (will be added to queue)
return this.animate({delay:1}, time, callback);
}
출처: http://james.padolsey.com/javascript/jquery-delay-plugin/
(메소드 체인 허용)
jQuery 타이머를 사용하면 개체에 연결된 타이머와 연결된 이름을 가질 수도 있습니다.따라서 개체에 여러 개의 타이머를 연결하고 그 중 하나를 중지할 수 있습니다.
$("#myid").oneTime(1000, "mytimer1" function() {
$("#something").hide();
}).oneTime(2000, "mytimer2" function() {
$("#somethingelse").show();
});
$("#myid").stopTime("mytimer2");
eval 함수(및 관련 함수, Function, setTimeout 및 setInterval)는 JavaScript 컴파일러에 대한 액세스를 제공합니다.이는 때때로 필요하지만 대부분의 경우 매우 잘못된 코딩이 있음을 나타냅니다.평가 기능은 JavaScript에서 가장 잘못 사용된 기능입니다.
http://www.jslint.com/lint.html
아마도 타이머 플러그인을 사용하는 것이 가장 쉬운 방법일 것입니다.http://plugins.jquery.com/project/timers 그리고 나서 다음과 같은 것을 부릅니다.
$(this).oneTime(1000, function() {
$("#something").hide();
});
<script>
$(function() {
$(".hide-it").hide(7000);
});
</script>
<div id="hide-it">myDiv</div>
우리는 직접 사용할 수 있습니다.
$('#selector').delay(5000).fadeOut('slow');
언급URL : https://stackoverflow.com/questions/820951/hide-div-after-a-few-seconds
'programing' 카테고리의 다른 글
스택의 로컬 변수 할당 순서 (0) | 2023.08.30 |
---|---|
jQuery 키 누르기 후 입력 값 가져오기 (0) | 2023.08.30 |
UISegmentedControl의 글꼴 색을 변경하는 방법 (0) | 2023.08.30 |
Express가 멋지게 포맷된 HTML을 출력하려면 어떻게 해야 합니까? (0) | 2023.08.30 |
여러 열에서 내부 조인을 수행하는 방법 (0) | 2023.08.30 |