Web設計師值得收藏的10個jQuery特效

來源: sofish.de  發布時間: 2010-12-06 10:18  閱讀: 4087 次  推薦: 1   原文鏈接   [收藏]  
 
摘要:jQuery已經不是什么新鮮的事兒,以前總把它認為是非常難的東西,也就沒有認真去了解他了。這篇文章的最重要內容是來自Web Designer Wall的一篇教程,一篇包含了10個jQuery特效的教程。
[1] Web設計師值得收藏的10個jQuery特效
[2] Web設計師值得收藏的10個jQuery特效

  jQuery已經不是什么新鮮的事兒,以前總把它認為是非常難的東西,也就沒有認真去了解他了。直到學完CSS的大部分內容,才開始接觸這種"write less, do more" 的Javascrīpt框架。這篇文章的最重要內容是來自Web Designer Wall的一篇教程,一篇包含了10個jQuery特效的教程。這里不打算全文翻譯,想以自己的語言來表達,或許這樣更方便大家理解/自己以后學習,也可能更準確地描述。

  先試試看?特效實例:

  View jQuery Demos:http://www.webdesignerwall.com/demo/jquery/

  jQuery是如何工作的?

  首先,你需要下載一個jQuery版本,并將它插入到<head>標簽內。然后,你將需要寫函數來告訴jQuery做些什么,下面的這個圖表將告訴你jQuery是怎樣工作的(請點擊圖片,查看大圖):

jQuery是怎樣工作的

  如何獲取元素(Get the element)?

  書寫jQuery函數是一個非常簡單的事。關鍵是你要學習如何獲取你想要實現的效果的確切元素。

 
1. ("#header") = 獲取 id="header" 的元素
2. ("h3") = 獲取所有<h3>
3. ("div#content .photo") = 獲取<div id="content">
4. 所有用class="photo"定義的元素
5. ("ul li") = 獲取所以 <ul><li> 的元素
6. ("ul li:first") = 只獲取<ul>中第一個<li>

  1. 簡單的下拉面板

  讓我們來開始這個簡單的下拉面板特效吧,或許你已經見過很多次,現在,自己試試吧:

簡單的下拉面板

  當包含class="btn-slide"的元素被點擊,它會下拉/上提<div id="panel">里的元素。然后切換到CSS中的class="active"到<a class="btn-slide">元素。.active 將會以CSS的方式打開/關閉出面板。

 
1. $(document).ready(function(){
2.
3. $(".btn-slide").click(function(){
4. $("#panel").slideToggle("slow");
5. $(this).toggleClass("active");
6. });
7.
8. });

  view demo:http://www.webdesignerwall.com/demo/jquery/simple-slide-panel.html

  2. 簡單的隱藏效果

  如圖,當右上角的上圖標被點擊時,內容被隱藏。

簡單的隱藏效果

  當被定義為 <img class="delete"> 的圖片被點擊,它會手找到父級元素 <div class="pane"> 并激活它的能力,慢慢消失,隱藏起來。

 
1. $(document).ready(function(){
2.
3. $(".pane .delete").click(function(){
4. $(this).parents(".pane").animate({ opacity: "hide" }, "slow");
5. });
6.
7. });

  view demo:http://www.webdesignerwall.com/demo/jquery/simple-disappear.html

  3 連續過渡效果

  讓我們來看看jQuery連貫性的威力吧。只需要幾行代碼,我能讓這個方塊漸變+縮放比例地飛來飛去。

連續過渡效果

  Line 1: 當 <a class="run"> 被點擊

  Line 2: 激活 <div id="box"> 的不透明度(opacity)=0.1,直到值達到400px,速度達到1200px/ms

  Line 3: 當opacity=0.4, top=160px,height=20,width=20,以"slow"顯示

  Line 4: 當opacity=1, left=0, height=100, width=100,也以"slow"顯示

  Line 5: 當opacity=1, left=0, height=100, width=100, 也以"slow"顯示

  Line 6: 當top=0, 以"fast"顯示

  Line 7: 然后,以常速上滑 (default speed = "normal")

  Line 8: 然后以"slow"下滑

  Line 9:返回失效會阻止瀏覽器跳向鏈接錨點

 
1. $(document).ready(function(){
2.
3. $(".run").click(function(){
4.
5. $("#box").animate({opacity: "0.1", left: "+=400"}, 1200)
6. .animate({opacity: "0.4", top: "+=160", height: "20", width: "20"}, "slow")
7. .animate({opacity: "1", left: "0", height: "100", width: "100"}, "slow")
8. .animate({top: "0"}, "fast")
9. .slideUp()
10. .slideDown("slow")
11. return false;
12.
13. });
14.
15. });

  view demo:http://www.webdesignerwall.com/demo/jquery/chainable-effects.html

  4a. 可折疊的模式 #1

  這是第一個可折疊的樣式。

可折疊的模式

  第一行將向<div class="accordion"> 內的第一個<H3> 添加一個CSS class為"active"的值。 第二行剛是隱藏<div class="accordion">內非第一個< p >的內容。當 <h3> 被點擊時,當前<p>下拉,而原先下拉的<p> 上提。

 
1. $(document).ready(function(){
2.
3. $(".accordion h3:first").addClass("active");
4. $(".accordion p:not(:first)").hide();
5. $(".accordion h3").click(function(){
6. $(this).next("p").slideToggle("slow")
7. .siblings("p:visible").slideUp("slow");
8. $(this).toggleClass("active");
9. $(this).siblings("h3").removeClass("active");
10.
11. });
12.
13. });

  view demo:http://www.webdesignerwall.com/demo/jquery/accordion1.html

  4b. 可折疊模式 #2

  這個實例與#1非常類似,不過,它會讓指定的面板像默認面板一樣打開。

  在CSS樣式表中,設置.accordion p 為 display:none。現在,如果你像默認打開的樣式一樣,打開第三個面板,你可以寫$(".accordion2 p").eq(2).show(); (eq = equal)來實現它,需要注意的是起始點是"0",而不是"1",所以,第三個相應的是"2",而不是"3"。

 
1. $(document).ready(function(){
2.
3. $(".accordion2 h3").eq(2).addClass("active");
4. $(".accordion2 p").eq(2).show();
5. $(".accordion2 h3").click(function(){
6. $(this).next("p").slideToggle("slow")
7. .siblings("p:visible").slideUp("slow");
8. $(this).toggleClass("active");
9. $(this).siblings("h3").removeClass("active"); });
10.
11. });

  view demo:http://www.webdesignerwall.com/demo/jquery/accordion2.html

  5a. 鼠標經過激活效果 #1

  這個將會實現一個非常漂亮的,當鼠標經過時出現漸變出現的效果。當鼠標經過菜單時,它會尋找緊接著的<em>,并在上方激活它的不透明度。

鼠標經過激活效果

 
1. $(document).ready(function(){
2.
3. $(".menu a").hover(function() {
4. $(this).next("em").animate({opacity: "show", top: "-75"}, "slow");
5. }, function()
6. {
7. $(this).next("em").animate({opacity: "hide", top: "-85"}, "fast");
8. });
9.
10. });

  view demo:http://www.webdesignerwall.com/demo/jquery/animated-hover1.html

  5b. 鼠標經過激活 #2

  這個實例會顯示菜單中鏈接的title 屬性attribute,讓其以變數方式存在,并添加<em>標簽。第一行會添加一個空的<em>到菜單的<a>元素。當鼠標經過菜單鏈接時,它會顯示title的屬性,讓它以"hoverText(隱藏)"的形式顯示,并使<em>中的文字顯示隱藏文本的值。

鼠標經過激活

 
1. $(document).ready(function(){
2.
3. $(".menu2 a").append("<em></em>");
4.
5. $(".menu2 a").hover(function() {
6. $(this).find("em").animate({opacity: "show", top: "-75"}, "slow");
7. var hoverText = $(this).attr("title");
8. $(this).find("em").text(hoverText);
9. }, function() {
10. $(this).find("em").animate({opacity: "hide", top: "-85"}, "fast");
11. });
12.
13. });

  view demo:http://www.webdesignerwall.com/demo/jquery/animated-hover2.html

[第1頁][第2頁]
1
0
 
標簽:Web jQuery 特效
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()