怎么用js来显示或隐藏一个div?很简单,下面一起来看一下。
01首先我们创建一个div,和一个按钮。用按钮的点击来控制div的显示或隐藏。
02添加一个样式名叫hide的样式,主要是设置display=none,即隐藏。
03接着用js来实现显示,隐藏的功能。我们用Jquery的hasClass方法来判断div是否有hide样式,有则删除这个样式,即显示div。如果没有,则添加一个hide的样式,即隐藏div。
04运行页面,我们点击按钮,如果div是正在显示的,点击后就会隐藏,如果是隐藏状态的,点击后就会显示。
需要准备的材料分别是:电脑、html编辑器、浏览器。
1、首先,打开html编辑器,新建一个html文件,例如:index.html。
2、在index.html文件的<script>标签中,写入js:
$('button').click(function () {
$('div').hide()
$('div').eq(parseInt(3 * Math.random())).show()
})
3、浏览器运行index.html页面,此时点击btn按钮总会显示其中1个div和隐藏另外2个div。
实现也很简单,但需要注意的是,在点击显示的事件中,需要做阻止事件冒泡的处理,否则就触发页面的点击事件了。但这样做也有一个缺点,即如果同一个页面中如果也有事件阻止冒泡,则不能隐藏DIV,所以在这样的事件中需要特殊处理下:自己调用隐藏下DIV(但正常来说这样的事件并不多);JS:
复制代码
代码如下:
$(document).ready(function()
{
//语言头部的点击事件,显示语言列表
$(".language_selected").click(function(e)
{
$(".language_list").toggle()
e.stopPropagation()
//阻止事件冒泡,否则事件会冒泡到下面的文档点击事件
})
//点击文档时,隐藏语言列表
$(document).click(function()
{
$(".language_list").hide()
})
//点击语言列表中的语言项时,更新选中项,并隐藏语言列表
$(".language_list
li").click(function()
{
$(".language_selected").text($(this).text())
$(".language_list").hide()
})
$("#noPopEvent").click(function(e)
{
e.stopPropagation()
})
})
CSS:
复制代码
代码如下:
.language_selected
{
cursor:
pointer
}
.language_list
{
border:
1px
solid
black
display:
none
}
.language_list
li
{
cursor:
pointer
border:
1px
solid
red
}
HTML:
复制代码
代码如下:
<div
style="width:
200px">
<div
class="language_selected">
中文(简体)</div>
<div
class="language_list">
<ul>
<li>中文(简体)</li>
<li>English</li>
</ul>
</div>
</div>
<div
id="noPopEvent"
style="width:
100px
height:
100px
border:
1px
solid
black">
点击我,不隐藏语言列表,需要自己显示DIV
</div>