日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

编程练习--简单实用的选项卡切换效果

發(fā)布時(shí)間:2025/5/22 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 编程练习--简单实用的选项卡切换效果 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

有網(wǎng)友私信我,說我前幾篇寫編程練習(xí)的例子讓他們感覺我寫代碼的方式和他們不一樣,讓他們很受啟發(fā),希望我多寫一些這樣的例子。他們幫我總結(jié)了一下,主要表現(xiàn)在以下三個(gè)方面:

1. 代碼外觀整潔清爽。

2.喜歡用對(duì)象方式編寫。

3.喜歡用原生javascript。

我非常認(rèn)同上面三點(diǎn),事實(shí)上我也是堅(jiān)持這么做的。第1點(diǎn)自不必說,愛美之心,人皆有之。我想沒有一個(gè)人愿意看排的凌亂不甚的代碼的。第2點(diǎn)呢,我個(gè)人認(rèn)為好處就很多了,最直接的好處就是可以更好的組織代碼,使各功能模塊之間即獨(dú)立又相互協(xié)調(diào),也方便擴(kuò)展和維護(hù)。第3條呢是因?yàn)槲夷壳暗墓ぷ鳝h(huán)境是移動(dòng)客戶端的前端開發(fā),一般只要兼容webkite內(nèi)核的瀏覽器就可以了,用原生的方法寫可以使代碼寫的短小精悍,同時(shí)也可以把更多的觀注點(diǎn)放在業(yè)務(wù)邏輯上。

常言道,拳不離手,曲不離口,技術(shù)都是熟能生巧,不能懈怠。有時(shí)候在網(wǎng)上看到一些好的例子,覺得或許以后會(huì)用的上,于是拿來自己改寫下。選項(xiàng)卡在web應(yīng)用中很常見,實(shí)現(xiàn)的方式也是多種多樣。下面這一款,就是利用javascript和css實(shí)現(xiàn)的,效果圖如下:

在線演示:http://runjs.cn/code/r8kqphjl

經(jīng)過我的改寫之后。調(diào)用非常簡單:

//實(shí)例化選項(xiàng)卡 var op = new Tabs('menu');

只要傳入選項(xiàng)卡節(jié)點(diǎn)的id就可以了。下面是js代碼:

/*** 選項(xiàng)卡類* @param {string} id 選項(xiàng)卡的ID*/ function Tabs(id){var node = document.querySelector('#'+id);var selected = node.querySelector('.selected');this.selected = selected;this.node = node;this.bindEvent(); }/*** 切換選項(xiàng)卡* @param {object} event 事件* @return {[type]} [description]*/ Tabs.prototype.change = function(event){var element = event.target;if(element.tagName.toLowerCase()=='li'){if(element.className=='selected'){return;}}else{while(element != this.node){element = element.parentNode;if(element.tagName.toLowerCase()=='li'){break;}}}this.selected.removeAttribute('class');element.className = 'selected';this.selected = element; }/*** 綁定事件* @return {[type]} [description]*/ Tabs.prototype.bindEvent = function(){this.node.addEventListener('click',this.change.bind(this),false) }

大家看到,我沒有用jquery,因?yàn)槲覍W⒌闹攸c(diǎn)在于實(shí)現(xiàn)的邏輯,一共三個(gè)部分:先是初始化,然后是切換功能,最后是事件綁定。我們?cè)賮砜纯丛瓉淼拇a:

$(function(){ $("li").on("click", function(){$("LI").removeClass("selected");$(this).toggleClass("selected", true); }) });

?

我看到原來的代碼里邊,是用$('li').on這樣的表達(dá)式配合循環(huán)遍歷去做的。雖然看起來代碼少,但實(shí)際上隱藏在$下面的代碼量一點(diǎn)都不少。這還不是重點(diǎn),重要的是這樣相當(dāng)于是每一個(gè)li上都綁定一個(gè)同樣的操作,而且每一次切換都相當(dāng)于更新了每一個(gè)li的樣式。讀過jquery源碼的人都知道,$("li")實(shí)際上是得到一個(gè)集合,內(nèi)部是循環(huán)去檢查每一個(gè)li,判斷它是不是有選中的樣式,如果有就拿掉,然后把當(dāng)前點(diǎn)中項(xiàng)加上選中樣式。用的時(shí)候感覺爽,實(shí)際上非常的低效。

如果我們把整個(gè)選項(xiàng)卡看成是一個(gè)對(duì)象,那么每一個(gè)選項(xiàng)就像是這個(gè)對(duì)象上的一部分,初始化的時(shí)候,就讓對(duì)象保存好每一個(gè)選項(xiàng)的狀態(tài),哪一個(gè)選項(xiàng)是選中的,它內(nèi)部自然是應(yīng)當(dāng)知道的。當(dāng)我們切換的時(shí)候,只要更新對(duì)象具體的狀態(tài)值就行,根本不需要去一個(gè)一個(gè)的遍歷。 就像老師在黑板上板書一樣,他知道哪一塊要保留,哪一塊要擦掉。不需每寫一次就把黑板全部擦一次。

好了,我知道又會(huì)有朋友要吐槽我的比喻了。我做好準(zhǔn)備了,愛吐糟的你在哪里?

轉(zhuǎn)載于:https://www.cnblogs.com/afrog/p/4098118.html

總結(jié)

以上是生活随笔為你收集整理的编程练习--简单实用的选项卡切换效果的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 超碰在线个人 | 高跟鞋和丝袜猛烈xxxxxx | _级黄色片| 特黄特色大片免费视频大全 | 欧美操穴 | 成人国产一区二区三区 | 香蕉视频污视频 | 国产视频在线播放 | 国产喷水福利在线视频 | 午夜网址| 国产农村av| 亚洲天堂av免费在线观看 | 青青草午夜 | 伦一理一级一a一片 | 国产美女www| 长篇h版少妇沉沦交换 | 国产女上位 | 丁香啪啪 | 大战熟女丰满人妻av | 国产91在线视频观看 | 日本美女一区二区 | 天天综合网久久 | 成人aaa视频 | 免费av看 | 久草aⅴ | 成人a免费 | www色亚洲 | 色多多视频在线观看 | 国产精品女教师 | 日韩一区二区毛片 | 欧美亚洲一区二区在线观看 | wwwa级片| 久久久一级片 | 欧洲视频在线观看 | 一区二区有码 | 18国产免费视频 | 人人人人干 | 美女被草出白浆 | 国产午夜精品在线观看 | 久久精品一区二区三区不卡牛牛 | 欧美极品一区 | 黄色网页网站 | 久久综合成人 | av操操操 | 以女性视角写的高h爽文 | 青草视屏 | 在线观看亚洲天堂 | 粗大黑人巨茎大战欧美成人 | 亚洲精品一二三四 | 国产女教师一区二区三区 | a视频免费在线观看 | 欧美8888 | 69pao| 国产最爽的乱淫视频国语对白 | 亚洲国产理论 | av资源站最新av | 精品无码久久久久 | 帮我拍拍漫画全集免费观看 | 国产精品福利视频 | 伊人青青草原 | 欧美黄色短片 | 91偷拍视频 | 黄色高清免费 | 亚洲妇熟xx妇色黄蜜桃 | 日韩午夜免费视频 | 日本打屁股网站 | 国产精品成人va在线观看 | 国产成人在线影院 | 最近2019中文字幕大全第二页 | a毛片在线免费观看 | 五月婷婷亚洲综合 | 在线播放小视频 | 亚洲精品一区中文字幕乱码 | 日日爱网站 | 日本美女高潮 | 极品销魂美女一区二区 | 天天射综合| 成人久久久久久久 | 毛片啪啪啪 | 视色网 | 国产福利片在线观看 | 第九色| 久久久久人妻一区精品 | 高跟鞋丝袜猛烈xxxx | 一区二区免费在线 | 性高潮久久久久久久久久 | 国模精品视频一区二区 | 91美女网站 | 一本色道久久综合熟妇 | 在线观看亚洲精品视频 | 日韩成人小视频 | 强行挺进白丝老师里呻吟 | 男人天堂久久久 | 日本特黄特色aaa大片免费 | 日韩激情网站 | 国产精品不卡在线 | 一区二区毛片 | 日本成人动漫在线观看 | 国产乱子轮xxx农村 岛国久久久 |