jQuery實(shí)現(xiàn)切換頁(yè)面布局使用介紹
更新時(shí)間:2011年10月09日 00:01:41 作者:
在很多網(wǎng)站尤其在一些購(gòu)物網(wǎng)站上,展示商品的列表頁(yè)提供了許多商品,用戶(hù)可以選擇商品的展示方式如列表方式展示和櫥窗方式展示等。在本例中,將給您講述如何實(shí)現(xiàn)這種效果
查看實(shí)例:DEMO 演示打包下載
XHTML
<a href="#" id="switch">切換布局</a>
<div id="demo" class="showlist">
<div class="list">
<h3><a href="#">文章標(biāo)題</a></h3>
<p>文章摘要</p>
</div>
...
</div>
XHTML結(jié)構(gòu)中,在#demo中放入了多個(gè).list,用于顯示文章標(biāo)題和摘要。通過(guò)下面的CSS來(lái)控制外觀(guān)。
CSS
#demo{width:680px; margin:20px auto; padding:4px; background:#f7f7f7;
border:1px solid #d3d3d3}
.list{margin:6px}
.list h3{height:26px; line-height:26px; font-size:14px}
.list p{line-height:20px}
.showblock .list{float:left; width:325px; height:100px}
我們要設(shè)置最外層的#demo樣式,使其具有統(tǒng)一外觀(guān),包括背景色和邊框樣式。注意,我們?cè)谧詈笠O(shè)置一個(gè)樣式.showblock .list,控制#demo里的.list樣式,使其向左浮動(dòng),并設(shè)置高度和寬度,設(shè)置.showblock其實(shí)就是設(shè)置#demo的樣式,在接下來(lái)的jQuery代碼中,你就會(huì)明白了。當(dāng)然您可以根據(jù)需求自行設(shè)計(jì)CSS和XHTML,本文只是為了演示簡(jiǎn)單的構(gòu)建了樣式和HTML結(jié)構(gòu)。
jQuery
實(shí)現(xiàn)切換布局的原理其實(shí)就是,用javascript來(lái)控制頁(yè)面顯示的樣式,當(dāng)用戶(hù)點(diǎn)擊切換時(shí),引用不同的CSSy樣式。請(qǐng)看下面的jQuery代碼。
$(function(){
$("#switch").toggle(function(){
$("#demo").fadeOut("fast",function(){
$(this).fadeIn("fast").addClass("showblock");
});
},function(){
$("#demo").fadeOut("fast",function(){
$(this).fadeIn("fast").removeClass("showblock");
});
});
});
我們使用toggle事件,它用來(lái)交替的執(zhí)行事件,使用fadeOut讓切換有個(gè)過(guò)渡效果,不難看出,就是通過(guò)addClass()和removeClass()調(diào)用不同的樣式來(lái)實(shí)現(xiàn)不同的布局效果。
問(wèn)題:如何實(shí)現(xiàn)分頁(yè)后,切換了布局方式,進(jìn)入下一頁(yè)和上一頁(yè)的布局方式一樣呢?
思路:可以采用cookie記錄用戶(hù)所選的布局方式,然后進(jìn)入下一頁(yè)時(shí)讀取cookie值,分配布局方式等。關(guān)于cookie的使用,可以參照本站文章:使用jQuery操作Cookies
XHTML
復(fù)制代碼 代碼如下:
<a href="#" id="switch">切換布局</a>
<div id="demo" class="showlist">
<div class="list">
<h3><a href="#">文章標(biāo)題</a></h3>
<p>文章摘要</p>
</div>
...
</div>
XHTML結(jié)構(gòu)中,在#demo中放入了多個(gè).list,用于顯示文章標(biāo)題和摘要。通過(guò)下面的CSS來(lái)控制外觀(guān)。
CSS
復(fù)制代碼 代碼如下:
#demo{width:680px; margin:20px auto; padding:4px; background:#f7f7f7;
border:1px solid #d3d3d3}
.list{margin:6px}
.list h3{height:26px; line-height:26px; font-size:14px}
.list p{line-height:20px}
.showblock .list{float:left; width:325px; height:100px}
我們要設(shè)置最外層的#demo樣式,使其具有統(tǒng)一外觀(guān),包括背景色和邊框樣式。注意,我們?cè)谧詈笠O(shè)置一個(gè)樣式.showblock .list,控制#demo里的.list樣式,使其向左浮動(dòng),并設(shè)置高度和寬度,設(shè)置.showblock其實(shí)就是設(shè)置#demo的樣式,在接下來(lái)的jQuery代碼中,你就會(huì)明白了。當(dāng)然您可以根據(jù)需求自行設(shè)計(jì)CSS和XHTML,本文只是為了演示簡(jiǎn)單的構(gòu)建了樣式和HTML結(jié)構(gòu)。
jQuery
實(shí)現(xiàn)切換布局的原理其實(shí)就是,用javascript來(lái)控制頁(yè)面顯示的樣式,當(dāng)用戶(hù)點(diǎn)擊切換時(shí),引用不同的CSSy樣式。請(qǐng)看下面的jQuery代碼。
復(fù)制代碼 代碼如下:
$(function(){
$("#switch").toggle(function(){
$("#demo").fadeOut("fast",function(){
$(this).fadeIn("fast").addClass("showblock");
});
},function(){
$("#demo").fadeOut("fast",function(){
$(this).fadeIn("fast").removeClass("showblock");
});
});
});
我們使用toggle事件,它用來(lái)交替的執(zhí)行事件,使用fadeOut讓切換有個(gè)過(guò)渡效果,不難看出,就是通過(guò)addClass()和removeClass()調(diào)用不同的樣式來(lái)實(shí)現(xiàn)不同的布局效果。
問(wèn)題:如何實(shí)現(xiàn)分頁(yè)后,切換了布局方式,進(jìn)入下一頁(yè)和上一頁(yè)的布局方式一樣呢?
思路:可以采用cookie記錄用戶(hù)所選的布局方式,然后進(jìn)入下一頁(yè)時(shí)讀取cookie值,分配布局方式等。關(guān)于cookie的使用,可以參照本站文章:使用jQuery操作Cookies
相關(guān)文章
jquery動(dòng)態(tài)改變form屬性提交表單
在js中動(dòng)態(tài)改變form的屬性,滿(mǎn)足不同條件的form提交需求,下面有個(gè)不錯(cuò)的示例,大家可以參考下2014-06-06NiftyCube——輕松實(shí)現(xiàn)圓角邊框
這篇文章主要介紹了NiftyCube——輕松實(shí)現(xiàn)圓角邊框2007-02-02jQuery UI Draggable + Sortable 結(jié)合使用(實(shí)例講解)
下面小編就為大家?guī)?lái)一篇jQuery UI Draggable + Sortable 結(jié)合使用(實(shí)例講解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09jquery ajaxfileupload異步上傳插件使用詳解
這篇文章主要為大家詳細(xì)介紹了jquery ajaxfileupload異步上傳插件的使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-02-02jquery實(shí)現(xiàn)頂部向右伸縮的導(dǎo)航區(qū)域代碼
這篇文章主要介紹了jquery實(shí)現(xiàn)頂部向右伸縮的導(dǎo)航區(qū)域代碼,涉及jquery鼠標(biāo)click點(diǎn)擊事件及頁(yè)面元素動(dòng)態(tài)操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09jquery 插件實(shí)現(xiàn)瀑布流圖片展示實(shí)例
本文給大家分享的是使用jQuery的masonry庫(kù)和infinitescroll庫(kù)實(shí)現(xiàn)的瀑布流美女圖片展示的實(shí)例,效果非常不錯(cuò),這里推薦給大家,有需要的小火把可以參考下。2015-04-04jQuery實(shí)現(xiàn)的網(wǎng)頁(yè)豎向菜單效果代碼
這篇文章主要介紹了jQuery實(shí)現(xiàn)的網(wǎng)頁(yè)豎向菜單效果代碼,涉及jquery控制頁(yè)面元素簡(jiǎn)單折疊與展開(kāi)功能,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-08-08