jQuery 学习02——效果:隐藏/显示、淡入淡出、滑动、动画、停止动画、Callback、链

jQuery 效果- 隐藏hide)和显示show)

语法:

$selector).hidespeed,callback);
$selector).showspeed,callback);
(可选)speed  参数:规定隐藏/显示的速度,可以取以下值:”slow”、”fast” 或毫秒。
(可选)callback 参数:是隐藏或显示完成后所执行的函数名称
 
例1:使用 hide) 和 show) 方法来隐藏和显示 HTML 元素:

<script>
$document).readyfunction){
  $"#hide").clickfunction){
    $"p").hide);
  });
  $"#show").clickfunction){
    $"p").show);
  });
});
</script>

<body>
  <p>如果你点击“隐藏” 按钮,我将会消失。</p>
  <button id="hide">隐藏</button>
  <button id="show">显示</button>
</body>

例2:演示带有 speed 参数的 hide)和show)方法:

<script>
$document).readyfunction){
  $"#hide").clickfunction){
    $"p").hide1000);
  });
  $"#show").clickfunction){
    $"p").show1000);
  });
});
</script>

<body>
<button id="hide">隐藏</button>
<button id="show">显示</button>
<p>这是个段落,内容比较少。</p>
<p>这是另外一个小段落</p>
</body>

toggle) 方法:来切换 hide) 和 show) 方法

例3:显示被隐藏的元素,并隐藏已显示的元素:

<script>
$document).readyfunction){
  $"button").clickfunction){
    $"p").toggle);
  });
});
</script>

<body>
<button>隐藏/显示</button>
<p>这是一个文本段落。</p>
<p>这是另外一个文本段落。</p>
</body>

jQuery 效果 – 淡入fadeIn) 淡出fadeOut)

 (1) fadeIn)方法 :用于淡入已隐藏的元素

语法:$selector).fadeInspeed,callback);

(可选) speed 参数:规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。.

(可选) callback 参数:是 fading 完成后所执行的函数名称

例:带有不同参数的 fadeIn) 方法:

<script>
$document).readyfunction){
  $"button").clickfunction){
    $"#div1").fadeIn);
    $"#div2").fadeIn"slow");
    $"#div3").fadeIn3000);
  });
});
</script>

<body>
<p>以下实例演示了 fadeIn) 使用了不同参数的效果。</p>
<button>点击淡入 div 元素。</button>
<br><br>
<div id="div1" style="80px;height:80px;display:none;background-color:red;"></div><br>
<div id="div2" style="80px;height:80px;display:none;background-color:green;"></div><br>
<div id="div3" style="80px;height:80px;display:none;background-color:blue;"></div>
</body>

(2)fadeOut) 方法:用于淡出可见元素

语法:$selector).fadeOutspeed,callback);

(可选) speed 参数:规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。.

(可选) callback 参数:是 fading 完成后所执行的函数名称

例:带有不同参数的 fadeOut) 方法:

<script>
$document).readyfunction){
  $"button").clickfunction){
    $"#div1").fadeOut);
    $"#div2").fadeOut"slow");
    $"#div3").fadeOut3000);
  });
});
</script>

<body>
<p>以下实例演示了 fadeOut) 使用了不同参数的效果。</p>
<button>点击淡出 div 元素。</button>
<br><br>
<div id="div1" style="80px;height:80px;background-color:red;"></div><br>
<div id="div2" style="80px;height:80px;background-color:green;"></div><br>
<div id="div3" style="80px;height:80px;background-color:blue;"></div>
</body>

(3) fadeToggle) 方法:可以在 fadeIn) 与 fadeOut) 方法之间进行切换

语法:$selector).fadeTogglespeed,callback);

(可选) speed 参数:规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。.

(可选) callback 参数:是 fading 完成后所执行的函数名称

例:带有不同参数的 fadeToggle) 方法:

<script>
$document).readyfunction){
    $"button").clickfunction){
        $"#div1").fadeToggle);
        $"#div2").fadeToggle"slow");
        $"#div3").fadeToggle3000);
    });
});
</script>

<body>
<p>实例演示了 fadeToggle) 使用了不同的 speed速度) 参数。</p>
<button>点击淡入/淡出</button>
<br><br>
<div id="div1" style="80px;height:80px;background-color:red;"></div>
<br>
<div id="div2" style="80px;height:80px;background-color:green;"></div>
<br>
<div id="div3" style="80px;height:80px;background-color:blue;"></div>
</body>

(4)fadeTo) 方法:允许渐变为给定的不透明度(值介于 0 与 1 之间)

语法:$selector).fadeTospeed,opacity,callback);

(必需) speed 参数:规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。

(必需)opacity 参数:将淡入淡出效果设置为给定的不透明度(值介于 0 与 1 之间)

(可选) callback 参数:是该函数完成后所执行的函数名称

例:带有不同参数的 fadeTo) 方法:

<script>
$document).readyfunction){
  $"button").clickfunction){
    $"#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="80px;height:80px;background-color:red;"></div><br>
<div id="div2" style="80px;height:80px;background-color:green;"></div><br>
<div id="div3" style="80px;height:80px;background-color:blue;"></div>
</body>

jQuery 效果 – slideDown) 向下 slideUp) 向上滑动

 (1)slideDown) 方法:用于向下滑动元素

语法:$selector).slideDownspeed,callback);

(可选) speed 参数:规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。

(可选) callback 参数:是滑动完成后所执行的函数名称

例:实现#panel元素向下滑动显示

<script> 
$document).readyfunction){
  $"#flip").clickfunction){
    $"#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).slideUpspeed,callback);

(可选) speed 参数:规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。

(可选) callback 参数:是滑动完成后所执行的函数名称

例:实现#panel元素向上滑动隐藏

<script> 
$document).readyfunction){
  $"#flip").clickfunction){
    $"#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).slideTogglespeed,callback);

(可选) speed 参数:规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。

(可选) callback 参数:是滑动完成后所执行的函数名称

例:实现#panel元素向上隐藏与向下滑动显示

<script> 
$document).readyfunction){
  $"#flip").clickfunction){
    $"#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).readyfunction){
  $"button").clickfunction){
    $"div").animate{left:'250px'});
  });
});
</script> 
 
<body>
<button>开始动画</button>
<p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 
如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p>
<div style="background:#98bf21;height:100px;100px;position:absolute;">
</div>

例2:生成动画的过程中可同时使用多个属性

<script> 
$document).readyfunction){
  $"button").clickfunction){
    $"div").animate{
      left:'250px',
      opacity:'0.5',
      height:'150px',
      '150px'
    });
    $"div").css"background-color","#FF0000");  //改变背景颜色
  });
});
</script> 
 
<body>
<button>开始动画</button>
<p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 
如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p>
<div style="background:#98bf21;height:100px;100px;position:absolute;">
</div>

(3)可以定义相对值(该值相对于元素的当前值)。需要在值的前面加上 += 或 -=:

<script> 
$document).readyfunction){
  $"button").clickfunction){
    $"div").animate{
      left:'250px',
      height:'+=150px',
      '+=150px'
    });
  });
});
</script> 

<body>
<button>开始动画</button>
<p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 
如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p>
<div style="background:#98bf21;height:100px;100px;position:absolute;">
</div>

(4)把属性的动画值设置为 “show显示”、”hide隐藏” 或 “toggle”切换

<script> 
$document).readyfunction){
  $"button").clickfunction){
    $"div").animate{
      'toggle',
      height:'toggle'
    });
  });
});
</script> 
 
<body>
<button>开始动画</button>
<p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 
如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p>
<div style="background:#98bf21;height:100px;100px;position:absolute;"></div>
</body>

(5)在彼此之后编写多个 animate) 调用,jQuery 会创建包含这些方法调用的“内部”队列。然后逐一运行这些 animate 调用。

<script> 
$document).readyfunction){
  $"button").clickfunction){
    var div=$"div");
    div.animate{height:'300px',opacity:'0.4'},"slow");
    div.animate{'300px',opacity:'0.8'},"slow");
    div.animate{height:'100px',opacity:'0.4'},"slow");
    div.animate{'100px',opacity:'0.8'},"slow");
  });
});
</script> 

<body>
<button>开始动画</button>
<p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。 
如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p>
<div style="background:#98bf21;height:100px;100px;position:absolute;"></div>
</body>

(6)把 <div> 元素往右边移动了 100 像素,然后增加文本的字号

<script> 
$document).readyfunction){
  $"button").clickfunction){
    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;200px;position:absolute;">HELLO</div>
</body>

 jQuery 停止动画stop) 

stop) 方法:用于停止动画或效果,在它们完成之前

语法:$selector).stopstopAll,goToEnd);

(可选) stopAll 参数:规定是否应该清除动画队列。默认是 false,即仅停止活动的动画,允许任何排入队列的动画向后执行。

(可选)goToEnd 参数:规定是否立即完成当前动画。默认是 false

(默认)stop): 会清除在被选元素上指定的当前动画

例:停止当前动画

<script> 
$document).readyfunction){
  $"#flip").clickfunction){
    $"#panel").slideDown5000);
  });
  $"#stop").clickfunction){
    $"#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).readyfunction){
  $"button").clickfunction){
    $"p").hide"slow",function){
      alert"段落现在被隐藏了");
    });
  });
});
</script>

<body>
<button>隐藏</button>
<p>我们段落内容,点击“隐藏”按钮我就会消失</p>
</body>

例2:没有回调函数,警告框会在隐藏效果完成前弹出:——先提示“段落现在被隐藏了”,再隐藏

<script>
$document).readyfunction){
  $"button").clickfunction){
    $"p").hide1000);
    alert"现在段落被隐藏了");//没有回调函数
  });
});
</script>
</head>
<body>
<button>隐藏</button>
<p>这是一个段落,内容很少</p>
</body>

jQuery – 链Chaining)

Chaining :允许我们在一条语句中运行多个 jQuery 方法(在相同的元素上)

提示: 这样的话,浏览器就不必多次查找相同的元素。

如需链接一个动作,您只需简单地把该动作追加到之前的动作上。

例1:把 css)、slideUp) 和 slideDown) 链接在一起。”p1″ 元素首先会变为红色,然后向上滑动,再然后向下滑动:

<script>
$document).readyfunction)
  {
  $"button").clickfunction){
    $"#p1").css"color","red").slideUp2000).slideDown2000);
  });
});
</script>

<body><p id="p1">文字说明!!</p><button>点我</button></body>

如果需要,我们也可以添加多个方法调用。

书写也可以很好地运行:——方便修改

<script>
$document).readyfunction)
  {
  $"button").clickfunction){
    $"#p1").css"color","red")
      .slideUp2000)
      .slideDown2000);
  });
});
</script>

<body><p id="p1">文字说明!!</p> <button>点我</button> </body>

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注