jQuery 效果- 隐藏hide()和显示show()
语法:
$(selector).show(speed,callback);
<script> $(document).ready(function(){ $("#hide").click(function(){ $("p").hide(); }); $("#show").click(function(){ $("p").show(); }); }); </script> <body> <p>如果你点击“隐藏” 按钮,我将会消失。</p> <button id="hide">隐藏</button> <button id="show">显示</button> </body>
例2:演示带有 speed 参数的 hide()和show()方法:
<script> $(document).ready(function(){ $("#hide").click(function(){ $("p").hide(1000); }); $("#show").click(function(){ $("p").show(1000); }); }); </script> <body> <button id="hide">隐藏</button> <button id="show">显示</button> <p>这是个段落,内容比较少。</p> <p>这是另外一个小段落</p> </body>
toggle() 方法:来切换 hide() 和 show() 方法
例3:显示被隐藏的元素,并隐藏已显示的元素:
<script> $(document).ready(function(){ $("button").click(function(){ $("p").toggle(); }); }); </script> <body> <button>隐藏/显示</button> <p>这是一个文本段落。</p> <p>这是另外一个文本段落。</p> </body>
jQuery 效果 - 淡入fadeIn() 淡出fadeOut()
(1) fadeIn()方法 :用于淡入已隐藏的元素
语法:$(selector).fadeIn(speed,callback);
(可选) speed 参数:规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。.
(可选) callback 参数:是 fading 完成后所执行的函数名称。
例:带有不同参数的 fadeIn() 方法:
<script> $(document).ready(function(){ $("button").click(function(){ $("#div1").fadeIn(); $("#div2").fadeIn("slow"); $("#div3").fadeIn(3000); }); }); </script> <body> <p>以下实例演示了 fadeIn() 使用了不同参数的效果。</p> <button>点击淡入 div 元素。</button> <br><br> <div id="div1" style="width:80px;height:80px;display:none;background-color:red;"></div><br> <div id="div2" style="width:80px;height:80px;display:none;background-color:green;"></div><br> <div id="div3" style="width:80px;height:80px;display:none;background-color:blue;"></div> </body>
(2)fadeOut() 方法:用于淡出可见元素
语法:$(selector).fadeOut(speed,callback);
(可选) speed 参数:规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。.
(可选) callback 参数:是 fading 完成后所执行的函数名称。
例:带有不同参数的 fadeOut() 方法:
<script> $(document).ready(function(){ $("button").click(function(){ $("#div1").fadeOut(); $("#div2").fadeOut("slow"); $("#div3").fadeOut(3000); }); }); </script> <body> <p>以下实例演示了 fadeOut() 使用了不同参数的效果。</p> <button>点击淡出 div 元素。</button> <br><br> <div id="div1" style="width:80px;height:80px;background-color:red;"></div><br> <div id="div2" style="width:80px;height:80px;background-color:green;"></div><br> <div id="div3" style="width:80px;height:80px;background-color:blue;"></div> </body>
(3) fadeToggle() 方法:可以在 fadeIn() 与 fadeOut() 方法之间进行切换
语法:$(selector).fadeToggle(speed,callback);
(可选) speed 参数:规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。.
(可选) callback 参数:是 fading 完成后所执行的函数名称。
例:带有不同参数的 fadeToggle() 方法:
<script> $(document).ready(function(){ $("button").click(function(){ $("#div1").fadeToggle(); $("#div2").fadeToggle("slow"); $("#div3").fadeToggle(3000); }); }); </script> <body> <p>实例演示了 fadeToggle() 使用了不同的 speed(速度) 参数。</p> <button>点击淡入/淡出</button> <br><br> <div id="div1" style="width:80px;height:80px;background-color:red;"></div> <br> <div id="div2" style="width:80px;height:80px;background-color:green;"></div> <br> <div id="div3" style="width:80px;height:80px;background-color:blue;"></div> </body>
(4)fadeTo() 方法:允许渐变为给定的不透明度(值介于 0 与 1 之间)
语法:$(selector).fadeTo(speed,opacity,callback);
(必需) speed 参数:规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
(必需)opacity 参数:将淡入淡出效果设置为给定的不透明度(值介于 0 与 1 之间)。
(可选) callback 参数:是该函数完成后所执行的函数名称。
例:带有不同参数的 fadeTo() 方法:
<script> $(document).ready(function(){ $("button").click(function(){ $("#div1").fadeTo("slow",0.15); $("#div2").fadeTo("slow",0.4); $("#div3").fadeTo("slow",0.7); }); }); </script> <body> <p>演示 fadeTo() 使用不同参数</p> <button>点我让颜色变淡</button> <br><br> <div id="div1" style="width:80px;height:80px;background-color:red;"></div><br> <div id="div2" style="width:80px;height:80px;background-color:green;"></div><br> <div id="div3" style="width:80px;height:80px;background-color:blue;"></div> </body>
jQuery 效果 - slideDown() 向下 slideUp() 向上滑动
(1)slideDown() 方法:用于向下滑动元素。
语法:$(selector).slideDown(speed,callback);
(可选) speed 参数:规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
(可选) callback 参数:是滑动完成后所执行的函数名称。
例:实现#panel元素向下滑动显示
<script> $(document).ready(function(){ $("#flip").click(function(){ $("#panel").slideDown("slow"); }); }); </script> <style type="text/css"> #panel,#flip{padding:5px;text-align:center;background-color:#e5eecc;border:solid 1px #c3c3c3;} #panel{padding:50px;display:none;} </style> <body> <div id="flip">点我滑下面板</div> <div id="panel">Hello world!</div> </body>
(2)slideUp() 方法:用于向上滑动元素
语法:$(selector).slideUp(speed,callback);
(可选) speed 参数:规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
(可选) callback 参数:是滑动完成后所执行的函数名称。
例:实现#panel元素向上滑动隐藏
<script> $(document).ready(function(){ $("#flip").click(function(){ $("#panel").slideUp("slow"); }); }); </script> <style type="text/css"> #panel,#flip{padding:5px;text-align:center;background-color:#e5eecc;border:solid 1px #c3c3c3;} #panel{padding:50px;/*display:none;*/} </style> <body> <div id="flip">点我拉起面板</div> <div id="panel">Hello world!</div> </body>
(3)slideToggle() 方法:可以在 slideDown() 与 slideUp() 方法之间进行切换
语法:$(selector).slideToggle(speed,callback);
(可选) speed 参数:规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
(可选) callback 参数:是滑动完成后所执行的函数名称。
例:实现#panel元素向上隐藏与向下滑动显示
<script> $(document).ready(function(){ $("#flip").click(function(){ $("#panel").slideToggle("slow"); }); }); </script> <style type="text/css"> #panel,#flip{padding:5px;text-align:center;background-color:#e5eecc;border:solid 1px #c3c3c3;} #panel{padding:50px;display:none;} </style> <body> <div id="flip">点我,显示或隐藏面板。</div> <div id="panel">Hello world!</div> </body>
jQuery 效果- 动画animate()
animate() 方法:用于创建自定义动画
语法:$(selector).animate({params},speed,callback);
(必需) params 参数:定义形成动画的 CSS 属性。
(可选) speed 参数:规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
(可选) callback 参数:是动画完成后所执行的函数名称。
例1:把 <div> 元素往右边移动了 250 像素
<script> $(document).ready(function(){ $("button").click(function(){ $("div").animate({left:'250px'}); }); }); </script> <body> <button>开始动画</button> <p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p> <div style="background:#98bf21;height:100px;width:100px;position:absolute;"> </div>
例2:生成动画的过程中可同时使用多个属性:
<script> $(document).ready(function(){ $("button").click(function(){ $("div").animate({ left:'250px', opacity:'0.5', height:'150px', width:'150px' }); $("div").css("background-color","#FF0000"); //改变背景颜色 }); }); </script> <body> <button>开始动画</button> <p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p> <div style="background:#98bf21;height:100px;width:100px;position:absolute;"> </div>
(3)可以定义相对值(该值相对于元素的当前值)。需要在值的前面加上 += 或 -=:
<script> $(document).ready(function(){ $("button").click(function(){ $("div").animate({ left:'250px', height:'+=150px', width:'+=150px' }); }); }); </script> <body> <button>开始动画</button> <p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p> <div style="background:#98bf21;height:100px;width:100px;position:absolute;"> </div>
(4)把属性的动画值设置为 "show显示"、"hide隐藏" 或 "toggle"切换:
<script> $(document).ready(function(){ $("button").click(function(){ $("div").animate({ width:'toggle', height:'toggle' }); }); }); </script> <body> <button>开始动画</button> <p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p> <div style="background:#98bf21;height:100px;width:100px;position:absolute;"></div> </body>
(5)在彼此之后编写多个 animate() 调用,jQuery 会创建包含这些方法调用的"内部"队列。然后逐一运行这些 animate 调用。
<script> $(document).ready(function(){ $("button").click(function(){ var div=$("div"); div.animate({height:'300px',opacity:'0.4'},"slow"); div.animate({width:'300px',opacity:'0.8'},"slow"); div.animate({height:'100px',opacity:'0.4'},"slow"); div.animate({width:'100px',opacity:'0.8'},"slow"); }); }); </script> <body> <button>开始动画</button> <p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p> <div style="background:#98bf21;height:100px;width:100px;position:absolute;"></div> </body>
(6)把 <div> 元素往右边移动了 100 像素,然后增加文本的字号:
<script> $(document).ready(function(){ $("button").click(function(){ var div=$("div"); div.animate({left:'100px'},"slow"); div.animate({fontSize:'3em'},"slow"); }); }); </script> <body> <button>开始动画</button> <p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p> <div style="background:#98bf21;height:100px;width:200px;position:absolute;">HELLO</div> </body>
jQuery 停止动画stop()
stop() 方法:用于停止动画或效果,在它们完成之前
语法:$(selector).stop(stopAll,goToEnd);
(可选) stopAll 参数:规定是否应该清除动画队列。默认是 false,即仅停止活动的动画,允许任何排入队列的动画向后执行。
(可选)goToEnd 参数:规定是否立即完成当前动画。默认是 false。
(默认)stop(): 会清除在被选元素上指定的当前动画。
例:停止当前动画
<script> $(document).ready(function(){ $("#flip").click(function(){ $("#panel").slideDown(5000); }); $("#stop").click(function(){ $("#panel").stop(); }); }); </script> <style type="text/css"> #panel,#flip{padding:5px;text-align:center;background-color:#e5eecc;border:solid 1px #c3c3c3;} #panel{padding:50px;display:none;} </style> <body> <button id="stop">停止滑动</button> <div id="flip">点我向下滑动面板</div> <div id="panel">Hello world!</div> </body>
jQuery Callback 方法
Callback 函数:在当前动画 100% 完成之后执行
例1:使用“Callback ”在隐藏效果完全实现后回调函数:——当隐藏后,提示“段落现在被隐藏了”
<script> $(document).ready(function(){ $("button").click(function(){ $("p").hide("slow",function(){ alert("段落现在被隐藏了"); }); }); }); </script> <body> <button>隐藏</button> <p>我们段落内容,点击“隐藏”按钮我就会消失</p> </body>
例2:没有回调函数,警告框会在隐藏效果完成前弹出:——先提示“段落现在被隐藏了”,再隐藏
<script> $(document).ready(function(){ $("button").click(function(){ $("p").hide(1000); alert("现在段落被隐藏了");//没有回调函数 }); }); </script> </head> <body> <button>隐藏</button> <p>这是一个段落,内容很少</p> </body>
jQuery - 链(Chaining)
Chaining :允许我们在一条语句中运行多个 jQuery 方法(在相同的元素上)。
提示: 这样的话,浏览器就不必多次查找相同的元素。
如需链接一个动作,您只需简单地把该动作追加到之前的动作上。
例1:把 css()、slideUp() 和 slideDown() 链接在一起。"p1" 元素首先会变为红色,然后向上滑动,再然后向下滑动:
<script> $(document).ready(function() { $("button").click(function(){ $("#p1").css("color","red").slideUp(2000).slideDown(2000); }); }); </script> <body><p id="p1">文字说明!!</p><button>点我</button></body>
如果需要,我们也可以添加多个方法调用。
书写也可以很好地运行:——方便修改
<script> $(document).ready(function() { $("button").click(function(){ $("#p1").css("color","red") .slideUp(2000) .slideDown(2000); }); }); </script> <body><p id="p1">文字说明!!</p> <button>点我</button> </body>