在 jQuery 中,如果想要實現元素的顯示與隱藏效果,有以下兩種方式:
-
show() 和 hide();
-
toggle()。
本節教學先來介紹 show() 和 hide() 方法,toggle() 方法下節介紹。
在 jQuery 中,我們可以使用 show() 方法來顯示元素,也可以使用 hide() 方法來隱藏元素。一般情況下,show() 和 hide() 這兩個方法都是配合起來使用的。
語法:
$().show(speed, fn)
$().hide(speed, fn)
show() 方法會把元素由 display:none; 還原為原來的狀態(display:block、display:inline-block 等)。hide() 方法會為元素定義 display:none;。
speed 是一個可選引數,表示動畫的速度,單位為毫秒。如果省略引數,則表示沒有動畫效果。speed 有兩種取值,一種是“字串”,另一種是“數值”,如表 1 所示。
表 1:speed 取值為字串及對應數值
字串 |
數值 |
slow |
200 |
normal |
400(預設值) |
fast |
600 |
fn 也是一個可選引數,表示動畫執行完成後的回撥函數。在這裡,所謂的回撥函數,就是在動畫執行完成後再執行的一個函數。
舉例:無動畫的 show() 和 hide()
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script src="js/jquery-1.12.4.min.js"></script>
<script>
$(function () {
$("#btn_hide").click(function(){
$("img").hide();
})
$("#btn_show").click(function () {
$("img").show();
})
})
</script>
</head>
<body>
<input id="btn_hide" type="button" value="隱藏" />
<input id="btn_show" type="button" value="顯示" /><br/>
<img src="img/jquery.png" alt=""/>
</body>
</html>
預設情況下,預覽效果如圖 1(a)所示。當我們點選【隱藏】按鈕之後,圖片會消失,預覽效果如圖 1(b)所示。當我們點選【顯示】按鈕之後,圖片又會重新顯示出來。
圖 1:無動畫的 show() 和 hide() 方法的效果