我需要在页面重新加载后的一定时间内隐藏一个div元素(例如Gmail中的“邮件发送成功”提示)。
我该如何做到这一点?
我该如何做到这一点?
这是一个基于你的测试的完整可用示例。将其与你当前拥有的代码进行比较,找出你哪里做错了。
<html>
<head>
<title>Untitled Document</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready( function() {
$('#deletesuccess').delay(1000).fadeOut();
});
</script>
</head>
<body>
<div id=deletesuccess > hiiiiiiiiiii </div>
</body>
</html>
在早期版本的jquery中,你需要按照“JavaScript方式”使用settimeout来完成它。
setTimeout( function(){$('div').hide();} , 4000);
或者
setTimeout( "$('div').hide();", 4000);
最近在jQuery 1.4中添加了这个解决方案:
$("div").delay(4000).hide();
当然,使用有效的jQuery选择器替换“div”,并在文档准备就绪时调用该函数。
setTimeout('$("#someDivId").hide()',1500);
$().ready(function(){
$('div.alert').delay(1500);
$('div.alert').hide(1000);
});
div.alert{
color: green;
background-color: rgb(50,200,50, .5);
padding: 10px;
text-align: center;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="alert"><p>Inserted Successfully . . .</p></div>
您也可以使用...
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
setTimeout(function(){
$(".signup-success").fadeOut(1500);}, 5000);
});
</script>
setTimeout
函数期望它的第一个参数是一个函数或字符串。你提供的既不是函数也不是字符串,而是执行函数,然后将该函数的返回值发送给setTimeout
函数。如果你传递函数本身,就像这样:setTimeout( $( "#div" ).hide, 4000 );
,那么这将起作用。 - Jacob Relkindeletesuccess
,但ID中为deletesucess
。 - rosscj2533