用js怎么实现一个div显示时间2秒后就自动消失。

JavaScript027

用js怎么实现一个div显示时间2秒后就自动消失。,第1张

首先,需要一个定时器,可以使用JS中的setTimeout() 方法。

其次,实现DIV消失,有很多种办法,可以使用$("#div").css('display','none'),通过设置DIV的display属性为none实现隐藏,也可以使用Jquery中hide()方法实现隐藏,还可以使用remove()移除DIV来实现DIV的消失。

下面是使用css(),setTimeout() 两个方法实现2秒后自动消失的完整代码:

扩展资料:

clearTimeout()用于重置js定时器,如果你希望阻止setTimeout的运行,就可以使用clearTimeout方法。

例如,如果想手动点击按钮停止DIV消失,代码可以这样写:

<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>实现DIV2秒后就自动消失</title>

<script src="__JS__/jquery.min.js"></script>

</head>

<body>

<div id="div">

这是DIV里的内容

</div>

<a id="stop" onclick="stop()"/>点击停止消失</a>

<script>

var timer

$(function () {

timer=setTimeout(function () {

$("#div").css('display','none')

}, 2000)

})

function stop(){

clearTimeout(timer)

}

</script>

</body>

</html>

知道文本框都有blur事件吗?就是光标在闪的时候就处于焦点,当你点其他地方时,光标就没了,就会触发blur事件。你要做到当div显示时,让隐藏在div内的文本框处于焦点,点击其他地方时,文本框的焦点自然会消失,blur事件把当前div隐藏。

!!注意: 当点击显示的div时要用脚本处理div中的隐藏文本框处于焦点

可以用jquery 脚本框架,方便,浏览器的兼容性好

如果确定只更改点击元素的下一个元素可以使用nextElementSibling来获取它

<dl>

<dt onclick="change(this)">按钮</dt>

<dd>内容</dd>

</dl>

<script>

function change(doc){

if(doc.nextElementSibling.style.display=="none"){

doc.nextElementSibling.style.display="block"

}else{

doc.nextElementSibling.style.display="none"

}

}

</script>

希望能帮到你