1. 显示动画
以下面一个代码示例:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuery显示动画</title>
<style>
.box{
200px;
height: 200px;
background-color: #ff6700;
display: none;
}
</style>
</head>
<body>
<div class="box"></div>
</body>
</html>
显示动画的方式有三种方式
方式一:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(".box").show();
</script>
解释:使用show(), 不带有参数, 表示让指定的元素直接显示出来。
其实这个方法的底层就是通过display:block;实现。
方式二:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
//在3秒内逐渐显示
$(".box").show(3000);
</script>
解释: 使用show(数值), 表示在一定时间之内, 逐渐显示出来。
这种方法是通过控制元素的宽高、透明度、display属性来说实现的。
方式三:
<script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(function () { $(".box").show("slow"); }) </script>
解释: 通过参数, 使用show(), 参数可以为:
(1) slow(慢): 600ms;
(2) normal(普通): 400ms;
(3) fast(快): 200ms;
通过这种方式调用show(), 也是空过控制元素的宽高、透明度、display属性来实现的。
补充:在动画执行完毕后, 执行另外的程序
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function () {
$(".box").show("faster", function () {
alert("动画执行完毕")
});
})
</script>
解释: 这种方式, 是在show()中加入了一个函数, 当show()执行完毕后, 就会执行此函数。
可以在方式一、方式二、方式三中都可以加入此函数。
2. 隐藏动画
示例代码:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuer隐藏动画</title>
<style>
.box{
200px;
height: 200px;
background-color: #ff6700;
display: block;
}
</style>
</head>
<body>
<div class="box"></div>
</body>
</html>
隐藏动画 和 显示动画的方式相同, 都具有三种方式, 区别在于隐藏动画使用hide()方法。
方式一:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){
$(".box").hide();
})
</script>
解释: 这种方式是通过hide()直接进行隐藏,hide()中没有任何参数。
方式的底层是通过 display: none; 实现
方式二:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){
$(".box").hide(3000);
})
</script>
解释:使用 hide(数值) , 表示在一定时间内, 逐渐隐藏。
这种方法是通过控制元素的宽高、透明度、display属性来说实现的。
方式三:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){
$(".box").hide("normal");
})
</script>
解释: 通过参数, 使用 hide(), 参数可以为:
(1) slow(慢): 600ms;
(2) normal(普通): 400ms;
(3) fast(快): 200ms;
通过这种方式调用 hide(), 也是空过控制元素的宽高、透明度、display属性来实现的。
补充:在动画执行完毕后, 执行另外的程序
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function () {
$(".box").hide("faster", function () {
alert("动画执行完毕")
});
})
</script>
解释: 这种方式, 是在 hide() 中加入了一个函数, 当 hide() 执行完毕后, 就会执行此函数。
可以在方式一、方式二、方式三中都可以加入此函数。
3. 显示隐藏示例
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>按钮控制图片显示隐藏</title>
<style>
#box{
200px;
height: 200px;
display: none;
background-color: #ff6700;
border: 1px solid green;
}
</style>
</head>
<body>
<div id="box"></div>
<button id="btn">显示</button>
<script type="text/javascript" src="jquery.js"></script>
<script>
$(function () {
var is_show = true;
$("#btn").click(function () {
if (is_show){
$("#box").show(3000, function () {
$(this).text("盒子出来");
$("#btn").text("隐藏");
is_show = false;
})
}else{
$("#box").hide(3000, function () {
$(this).text("");
$("#btn").text("显示");
is_show = true;
})
}
})
})
</script>
</body>
</html>
4. 便捷方式实现显示隐藏动画
可以功过 toggle() 便捷的实现显示和隐藏的来回切换, 语法格式如下:
$("#box").toggle(3000, function () {
})
但是这种方法有一个不足之处, 那就是在执行时, 会先执行show(), 然后再执行hide()
使用 toggle() 的示例代码如下:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>按钮控制图片显示隐藏</title>
<style>
#box{
200px;
height: 200px;
display: none;
background-color: #ff6700;
border: 1px solid green;
}
</style>
</head>
<body>
<div id="box"></div>
<button id="btn">显示</button>
<script type="text/javascript" src="jquery.js"></script>
<script>
$(function () {
$("#btn").click(function () {
$("#box").toggle(3000, function () {
$(this).text("盒子显示");
if($("#btn").text() == "隐藏"){
$("#btn").text("显示");
}else{
$("#btn").text("隐藏");
}
})
})
})
</script>
</body>
</html>