掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
jQuery已經(jīng)不是什么新鮮的事兒,以前總把它認(rèn)為是非常難的東西,也就沒(méi)有認(rèn)真去了解他了。直到學(xué)完CSS的大部分內(nèi)容,才開(kāi)始接觸這種"write less, do more" 的Javascrīpt框架。這篇文章的最重要內(nèi)容是來(lái)自Web Designer Wall的一篇教程,一篇包含了10個(gè)jQuery特效的教程。這里不打算全文翻譯,想以自己的語(yǔ)言來(lái)表達(dá),或許這樣更方便大家理解/自己以后學(xué)習(xí),也可能更準(zhǔn)確地描述。

成都創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營(yíng)銷、網(wǎng)站重做改版、麻江網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5、商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為麻江等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
先試試看?特效實(shí)例:
View jQuery Demos:http://www.webdesignerwall.com/demo/jquery/
jQuery是如何工作的?
首先,你需要下載一個(gè)jQuery版本,并將它插入到
標(biāo)簽內(nèi)。然后,你將需要寫(xiě)函數(shù)來(lái)告訴jQuery做些什么,下面的這個(gè)圖表將告訴你jQuery是怎樣工作的(請(qǐng)點(diǎn)擊圖片,查看大圖):如何獲取元素(Get the element)?
書(shū)寫(xiě)jQuery函數(shù)是一個(gè)非常簡(jiǎn)單的事。關(guān)鍵是你要學(xué)習(xí)如何獲取你想要實(shí)現(xiàn)的效果的確切元素。
- ("#header") = 獲取 id="header" 的元素
- ("h3") = 獲取所有
- ("div#content .photo") = 獲取
里- 所有用class="photo"定義的元素
- ("ul li") = 獲取所以
中
- 的元素
- ("ul li:first") = 只獲取
中第一個(gè)
1. 簡(jiǎn)單的下拉面板
讓我們來(lái)開(kāi)始這個(gè)簡(jiǎn)單的下拉面板特效吧,或許你已經(jīng)見(jiàn)過(guò)很多次,現(xiàn)在,自己試試吧:
當(dāng)包含class="btn-slide"的元素被點(diǎn)擊,它會(huì)下拉/上提
里的元素。然后切換到CSS中的class="active"到元素。.active 將會(huì)以CSS的方式打開(kāi)/關(guān)閉出面板。
- $(document).ready(function(){
- $(".btn-slide").click(function(){
- $("#panel").slideToggle("slow");
- $(this).toggleClass("active");
- });
- });
view demo:http://www.webdesignerwall.com/demo/jquery/simple-slide-panel.html
2. 簡(jiǎn)單的隱藏效果
如圖,當(dāng)右上角的上圖標(biāo)被點(diǎn)擊時(shí),內(nèi)容被隱藏。
當(dāng)被定義為
的圖片被點(diǎn)擊,它會(huì)手找到父級(jí)元素
并激活它的能力,慢慢消失,隱藏起來(lái)。
- $(document).ready(function(){
- $(".pane .delete").click(function(){
- $(this).parents(".pane").animate({ opacity: "hide" }, "slow");
- });
- });
view demo:http://www.webdesignerwall.com/demo/jquery/simple-disappear.html
3 連續(xù)過(guò)渡效果
讓我們來(lái)看看jQuery連貫性的威力吧。只需要幾行代碼,我能讓這個(gè)方塊漸變+縮放比例地飛來(lái)飛去。
Line 1: 當(dāng) 被點(diǎn)擊
Line 2: 激活
的不透明度(opacity)=0.1,直到值達(dá)到400px,速度達(dá)到1200px/msLine 3: 當(dāng)opacity=0.4, top=160px,height=20,width=20,以"slow"顯示
Line 4: 當(dāng)opacity=1, left=0, height=100, width=100,也以"slow"顯示
Line 5: 當(dāng)opacity=1, left=0, height=100, width=100, 也以"slow"顯示
Line 6: 當(dāng)top=0, 以"fast"顯示
Line 7: 然后,以常速上滑 (default speed = "normal")
Line 8: 然后以"slow"下滑
Line 9:返回失效會(huì)阻止瀏覽器跳向鏈接錨點(diǎn)
- $(document).ready(function(){
- $(".run").click(function(){
- $("#box").animate({opacity: "0.1", left: "+=400"}, 1200)
- .animate({opacity: "0.4", top: "+=160", height: "20", width: "20"}, "slow")
- .animate({opacity: "1", left: "0", height: "100", width: "100"}, "slow")
- .animate({top: "0"}, "fast")
- .slideUp()
- .slideDown("slow")
- return false;
- });
- });
view demo:http://www.webdesignerwall.com/demo/jquery/chainable-effects.html
4a. 可折疊的模式 #1
這是第一個(gè)可折疊的樣式。
第一行將向
內(nèi)的第一個(gè)添加一個(gè)CSS class為"active"的值。 第二行剛是隱藏
內(nèi)非第一個(gè)< p >的內(nèi)容。當(dāng)被點(diǎn)擊時(shí),當(dāng)前
下拉,而原先下拉的
上提。
- $(document).ready(function(){
- $(".accordion h3:first").addClass("active");
- $(".accordion p:not(:first)").hide();
- $(".accordion h3").click(function(){
- $(this).next("p").slideToggle("slow")
- .siblings("p:visible").slideUp("slow");
- $(this).toggleClass("active");
- $(this).siblings("h3").removeClass("active");
- });
- });
view demo:http://www.webdesignerwall.com/demo/jquery/accordion1.html
4b. 可折疊模式 #2
這個(gè)實(shí)例與#1非常類似,不過(guò),它會(huì)讓指定的面板像默認(rèn)面板一樣打開(kāi)。
在CSS樣式表中,設(shè)置.accordion p 為 display:none?,F(xiàn)在,如果你像默認(rèn)打開(kāi)的樣式一樣,打開(kāi)第三個(gè)面板,你可以寫(xiě)$(".accordion2 p").eq(2).show(); (eq = equal)來(lái)實(shí)現(xiàn)它,需要注意的是起始點(diǎn)是"0",而不是"1",所以,第三個(gè)相應(yīng)的是"2",而不是"3"。
- $(document).ready(function(){
- $(".accordion2 h3").eq(2).addClass("active");
- $(".accordion2 p").eq(2).show();
- $(".accordion2 h3").click(function(){
- $(this).next("p").slideToggle("slow")
- .siblings("p:visible").slideUp("slow");
- $(this).toggleClass("active");
- $(this).siblings("h3").removeClass("active"); });
- });
view demo:http://www.webdesignerwall.com/demo/jquery/accordion2.html
5a. 鼠標(biāo)經(jīng)過(guò)激活效果 #1
這個(gè)將會(huì)實(shí)現(xiàn)一個(gè)非常漂亮的,當(dāng)鼠標(biāo)經(jīng)過(guò)時(shí)出現(xiàn)漸變出現(xiàn)的效果。當(dāng)鼠標(biāo)經(jīng)過(guò)菜單時(shí),它會(huì)尋找緊接著的,并在上方激活它的不透明度。
- $(document).ready(function(){
- $(".menu a").hover(function() {
- $(this).next("em").animate({opacity: "show", top: "-75"}, "slow");
- }, function()
- {
- $(this).next("em").animate({opacity: "hide", top: "-85"}, "fast");
- });
- });
view demo:http://www.webdesignerwall.com/demo/jquery/animated-hover1.html
5b. 鼠標(biāo)經(jīng)過(guò)激活 #2
這個(gè)實(shí)例會(huì)顯示菜單中鏈接的title 屬性attribute,讓其以變數(shù)方式存在,并添加標(biāo)簽。第一行會(huì)添加一個(gè)空的到菜單的元素。當(dāng)鼠標(biāo)經(jīng)過(guò)菜單鏈接時(shí),它會(huì)顯示title的屬性,讓它以"hoverText(隱藏)"的形式顯示,并使中的文字顯示隱藏文本的值。
- $(document).ready(function(){
- $(".menu2 a").append("");
- $(".menu2 a").hover(function() {
- $(this).find("em").animate({opacity: "show", top: "-75"}, "slow");
- var hoverText = $(this).attr("title");
- $(this).find("em").text(hoverText);
- }, function() {
- $(this).find("em").animate({opacity: "hide", top: "-85"}, "fast");
- });
- });
view demo:http://www.webdesignerwall.com/demo/jquery/animated-hover2.html
#p#
6. 整塊可點(diǎn)擊性效果
這個(gè)實(shí)例將會(huì)教你如何實(shí)現(xiàn)內(nèi)容中元素可點(diǎn)擊性效果,Best Web Gallery的側(cè)邊欄Tab就顯示這樣的效果。
如果你想讓class="pane-list"的
內(nèi)的
- 可點(diǎn)擊(整塊),你可以向 ".pane-list li"指派一個(gè)函數(shù),使它被點(diǎn)擊時(shí),函數(shù)找到 元素,重定向到它的href屬性值。
- $(document).ready(function(){
- $(".pane-list li").click(function(){
- window.location=$(this).find("a").attr("href"); return false;
- });
- });
view demo:http://www.webdesignerwall.com/demo/jquery/block-clickable.html
7. 可收縮面板
讓我們組合一下上面的實(shí)例,創(chuàng)造一給可收縮的面板(像Gmai收件箱面板l)。作者還在Web Designer Wall 的評(píng)論列表Next2Friends里應(yīng)用這個(gè)。
First line: 隱藏