1. 程式人生 > 程式設計 >JavaScript實現伸縮二級選單

JavaScript實現伸縮二級選單

實現伸縮二級選單的具體程式碼,供大家參考,具體內容如下

伸縮二級選單:

案例說明:效果圖如下,一次只能開啟一個,開啟後,+ 號變 - 。

JavaScript實現伸縮二級選單

HTML 程式碼

<!--伸拉列表-->
<style>
 
    li {
        /*取消li小圓點*/
        list-style: none;
    }
 
    li span {
        /*給 span 標籤設定背景圖片(開頭的小加號小減號,no-repeat不迴圈,初始位置 0 0)*/
        background: url(add.png) no-repeat left center;
        padding-left: 20px;
    }
 
    /*起始樣式*/
    li ul{
        height: 0;
        /*溢位隱藏*/
        overflow: hidden;
        /*新增過渡效果*/
        transition: all 0.5s;
    }
    /*展開樣式*/
    .open{
        background-image: url(minus.png);
    }
    .open+ul{
        height: 70px;
    }
 
 
</style>
 
 
<ul class="tree">
    <li><span class="open">考勤管理</span>
        <ul>
            <li>日常考勤</li>
 http://www.cppcns.com
<li>請假申請</li> <li>加班出差</li> </ul> </li> <li><span>資訊中心</span> <ul> <li>日常考勤</li> <li>請假申請</li> <li>加班出差</li> </ul> </li> <li><span>協同辦公</span> <ul> <li>日常考勤</li> <li>請假申請</li> <li>加班出差</li> </ul> </li> </ul> <script src="m.js"></script>

Script 程式碼

// 伸拉列表
 
// 實現思路:
 
var spans = document.querySelectorAll(".tree span");
 
for (var i = 0; i < spans.length; i++) {
    spans[i].onclick = function () {
        // console.log(this);
        // 查詢要修改的元素 span 自己
        // 修改,刪除或新增 class -> open
        // 判斷自己身上是不是有 open,如果有,刪除!
        // this ->指向觸發事件的元素本身
        if (this.clas
sName == "open") { // 如果有,刪除! this.className = ""; } else { // 如果沒有,則新增 ,刪除其他已經開啟的! //找到開啟(open屬性的lhttp://www.cppcns.comi) var openSpan = document.querySelector(".tree .open") if (openSpan !== null) { // 如pBylg果集合不為空,刪除他們的 open 屬性 openSpan.className = ""; } // 給自己設定 open 屬性 this.className = "open"; } } }

JavaScript實現伸縮二級選單

以上就是本文的全部內容,希望對大家的學習有所幫助www.cppcns.com,也希望大家多多支援我們。