您好,登錄后才能下訂單哦!
今天小編給大家分享的是html、css和js組合實(shí)現(xiàn)折疊菜單的代碼,很多人都不太了解,今天小編為了讓大家更加了解折疊菜單的代碼,所以給大家總結(jié)了以下內(nèi)容,一起往下看吧。一定會(huì)有所收獲的哦。
1. 套用模板,將菜單的相關(guān)信息直接放在腳本數(shù)據(jù)中,使用循環(huán)生成
<script id="templateNavBar" type="text/html"> <p class="nav-bar-logo"> </p> {{each $data as item i}} <p class="nav-item {{item.class}}">{{item.name}}</p> {{if item.child != null}} <p class="childgroup"> {{each item.child as child i}} <p class="nav-item {{child.class}} child">{{child.name}}</p> {{/each}} </p> {{/if}} {{/each}} </script>
2.在js中通過(guò)添加類(lèi)open的方式來(lái)實(shí)現(xiàn)菜單的折疊和展開(kāi)
$(document).on('click','.nav-item:not(.child)',function () { console.log("choosing"); var that = $(this); var next =that.next(); if(next.hasClass('childgroup')){ if (that.hasClass('open')) { // 收起當(dāng)前菜單項(xiàng) that.removeClass('open'); next.slideUp(); } else{ // 將其他打開(kāi)的菜單項(xiàng)收起來(lái) if($('.nav-item:not(.child).open').next().hasClass('childgroup')) { $('.nav-item:not(.child).open').next().slideUp(); $('.nav-item:not(.child).open').removeClass('open'); } // 激活當(dāng)前菜單項(xiàng) that.addClass('open'); next.slideDown(); } } // 監(jiān)聽(tīng)一級(jí)菜單結(jié)束
這里面也有一些css的使用技巧在其中,希望自己能記住
關(guān)于html、css和js組合實(shí)現(xiàn)折疊菜單的代碼就分享到這里了,當(dāng)然并不止以上和大家分析的辦法,不過(guò)小編可以保證其準(zhǔn)確性是絕對(duì)沒(méi)問(wèn)題的。希望以上內(nèi)容可以對(duì)大家有一定的參考價(jià)值,可以學(xué)以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。