JQuery高级29_动画&遍历1
一、动画
三种方式显示和隐藏元素
1、默认显示和隐藏方式
1. show([speed,[easing],[fn]])
参数:
1. speed:动画的速度。三个预定义的值("slow","normal", "fast")或表示动画时长的毫秒数值(如:1000)
2. easing:用来指定切换效果,默认是"swing",可用参数"linear"
swing:动画执行时效果是 先慢,中间快,最后又慢
linear:动画执行时速度是匀速的
3. fn:在动画完成时执行的函数,每个元素执行一次。
2. hide([speed,[easing],[fn]])
3. toggle([speed],[easing],[fn]) 切换,点击显示,再点击隐藏
2、滑动显示和隐藏方式
1. slideDown([speed],[easing],[fn]):显示
2. slideUp([speed,[easing],[fn]]):隐藏
3. slideToggle([speed],[easing],[fn])
3、淡入淡出显示和隐藏方式
1. fadeIn([speed],[easing],[fn]):显示
2. fadeOut([speed],[easing],[fn]):隐藏
3. fadeToggle([speed,[easing],[fn]])
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="../js/jquery-3.3.1.min.js"></script>
<script>
//隐藏div
function hideFn() {
$("#showDiv").hide("normal","swing",function () {
alert("隐藏了...");
});
$("#showDiv").hide("slow","swing");
//默认方式
$("#showDiv").hide(5000,"swing");//5秒隐藏
//滑动方式
$("#showDiv").slideUp("slow");
//淡入淡出方式
$("#showDiv").fadeOut("slow");
}
//显示div
function showFn() {
$("#showDiv").show("slow","swing",function () {
alert("显示了...");
});
//默认方式
$("#showDiv").show("normal","linear");
//滑动方式
$("#showDiv").slideDown("slow");
//淡入淡出方式
$("#showDiv").fadeIn("slow");
}
//切换显示隐藏div
function toggleFn() {
$("#showDiv").toggle("slow","swing",function () {
alert("切换了...");
});
//默认方式
$("#showDiv").toggle("fast");
//滑动方式
$("#showDiv").slideToggle("slow")
//淡入淡出方式
$("#showDiv").fadeToggle("slow");
}
</script>
</head>
<body>
<input type="button" value="点击按钮隐藏div" onclick="hideFn()">
<input type="button" value="点击按钮显示div" onclick="showFn()">
<input type="button" value="点击按钮切换div显示和隐藏" onclick="toggleFn()">
<div id="showDiv" style="width:300px;height:300px;background:pink">
div显示和隐藏
</div>
</body>
</html>

二、遍历
1、js的遍历方式
for(初始化值;循环结束条件;步长)
2、jq的遍历方式
1. jq对象.each(callback)
1. 语法:
jquery对象.each(function(index,element){});
index:就是元素在集合中的索引
element:就是集合中的每一个元素对象
this:集合中的每一个元素对象
2. 回调函数返回值:
true:如果当前function返回为false,则结束循环(break)。
false:如果当前function返回为true,则结束本次循环,继续下次循环(continue)
2. $.each(object, [callback])
3. for..of: jquery 3.0 版本之后提供的方式
for(元素对象 of 容器对象)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="../js/jquery-3.3.1.min.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
$(function () {
//1.获取所有的ul下的li
var citys = $("#city li");
//2.遍历
for (var i = 0; i < citys.length; i++) {
//获取内容
if("上海" == citys[i].innerHTML){
// break;//结束循环
continue;//结束本次循环,继续下次循环
}
alert(i+":"+citys[i].innerHTML);
}
//2. jq对象.each(callback)
citys.each(function (index, element) {
//3.1获取li对象 第一种方式 this
alert(this.innerHTML);
alert($(this).html());
//3.2获取li对象 第二种方式 在回调函数中定义参数 index(索引) element(元素对象)
alert(index+":"+element.innerHTML);
//判断如果是上海,则结束循环
if("上海" == $(element).html()){
//如果当前function返回为false,则结束循环(break)。
// //如果返回为true,则结束本次循环,继续下次循环(continue)
return true;
}
alert(index+":"+$(element).html());
});
//3.$.each(object,[callback])
$.each(citys,function () {
alert($(this).html());
});
//4. for ... of:jquery 3.0 版本之后提供的方式
for(city of citys){
alert($(city).html());
}
});
</script>
</head>
<body>
<ul id="city">
<li>北京</li>
<li>上海</li>
<li>天津</li>
<li>重庆</li>
</ul>
</body>
</html>
浙公网安备 33010602011771号