本节我们来学习如何使用 jQuery 中的方法来实现元素的显示与隐藏效。
hide()方法hide() 方法用于隐藏指定的元素,与 CSS 中的 display:none 效果类似。
语法如下所示:
【资料图】
$(selector).hide(speed,easing,callback)
speed:可选,规定隐藏效果的速度。可选值为 slow、fast、毫秒。easing:可选,规定在动画的不同点上元素的速度,可选值为 swing、linear。callback:可选,hide() 方法执行完之后,要执行的函数。示例:<!DOCTYPE html><html><head><meta charset="utf-8"><title>jQuery_侠课岛(9xkd.com)</title><script src="jquery-3.5.1.min.js"></script><script> $(function(){ $("button").click(function(){ $(".fruit").hide("slow","linear"); }); });</script></head><body> <div> <button>隐藏下面内容</button> <div class="fruit"> <p>我喜欢的水果:</p> <ul> <li>西瓜</li> <li>苹果</li> <li>香蕉</li> <li>桃子</li> <li>哈密瓜</li> </ul> </div> </div></body></html>
在浏览器中的演示效果:
show()方法show() 方法用于显示隐藏的指定元素。与 CSS 中 display:none 的效果类似。
语法如下所示:
$(selector).show(speed,easing,callback)
show() 方法中的参数和 hide() 方法中参数类似。
示例:<!DOCTYPE html><html><head><meta charset="utf-8"><title>jQuery_侠课岛(9xkd.com)</title><script src="jquery-3.5.1.min.js"></script><script> $(function(){ $(".hide").click(function(){ $(".fruit").hide("slow","linear"); }); $(".show").click(function(){ $(".fruit").show("slow","linear"); }); });</script></head><body> <div> <button class="hide">隐藏下面内容</button> <button class="show">显示下面内容</button> <div class="fruit"> <p>我喜欢的水果:</p> <ul> <li>西瓜</li> <li>苹果</li> <li>香蕉</li> <li>桃子</li> <li>哈密瓜</li> </ul> </div> </div></body></html>
在浏览器中的演示效果:
toggle()方法上面示例中我们在实现显示和隐藏效果时,需要使用两个按钮分别控制。那么有没有办法只通过一个按钮就可以实现显示和隐藏效果呢。这就需要用到 toggle() 方法了,toggle() 方法可以用于切换 hide() 和 show() 方法。
语法如下所示:
$(selector).toggle(speed,callback,switch)
speed:可选,规定元素从可见到隐藏的速度,可选值又slow、normal、fast、毫秒。callback:可选,toggle 函数执行完之后,要执行的函数。switch:可选,规定 toggle 是否隐藏或显示所有被选元素。True 表示显示所有元素,False 表示隐藏所有元素。如果设置此参数,则无法使用 speed 和 callback 参数。示例:例如实现上述示例效果,我们只需要像下面这样写即可,主要是修改 jQuery 代码部分:
<!DOCTYPE html><html><head><meta charset="utf-8"><title>jQuery_侠课岛(9xkd.com)</title><script src="jquery-3.5.1.min.js"></script><script> $(function(){ $(".toggle").click(function(){ $(".fruit").toggle(1000); }); });</script></head><body> <div> <button class="toggle">切换显示与隐藏</button> <div class="fruit"> <p>我喜欢的水果:</p> <ul> <li>西瓜</li> <li>苹果</li> <li>香蕉</li> <li>桃子</li> <li>哈密瓜</li> </ul> </div> </div></body></html>
在浏览器中的演示效果:
我们来看一下区别,使用 show() 和 hide() 方法需要的代码:
$(function(){ $(".hide").click(function(){ $(".fruit").hide("slow","linear"); }); $(".show").click(function(){ $(".fruit").show("slow","linear"); }); });
使用 toggle() 方法需要的代码:
$(function(){ $(".toggle").click(function(){ $(".fruit").toggle(1000); });});
所以很明显,在需要实现隐藏和显示两种效果相互切换时,使用 toggle() 方法是很方便的。