js選項卡功能4

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>hash</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            list-style: none;
        }
 
        .tab {
            width: 300px;
        }
 
        .tab-choose {
            width: 300px;
            height: 40px;
        }
 
        .tab-choose li {
            float: left;
            width: 100px;
            line-height: 40px;
            box-sizing: border-box;
            border: 1px solid #000;
            border-right: none;
            text-align: center;
        }
 
        .tab-choose li:last-child {
            border-right: 1px solid #000000;
        }
 
        .tabCur {
            background: black;
            color: #fff;
        }
        .tab-cont {
            width: 298px;
            height: 200px;
            border: 1px solid #000;
        }
 
        .page {
            display: none;
        }
 
        .page.cur {
            display: block;
        }
    </style>
 
</head>
<body>
<div class="tab">
    <div id="tab" class="tab-choose">
        <ul>
            <li class="tabCur">選擇一</li>
            <li>選擇二</li>
            <li>選擇三</li>
        </ul>
    </div>
    <ul class="tab-cont">
        <li id="page1" class="page cur">內容一</li>
        <li id="page2" class="page">內容二</li>
        <li id="page3" class="page">內容三</li>
    </ul>
 
</div>
</body>
<script>
    window.onload = function () {
        var nav = document.getElementById('tab');
        var navLi = nav.getElementsByTagName('li');
        for (var i = 0, len = navLi.length; i < len; i++) {
            (function (i) {
                navLi[i].onclick = function () {   //點擊nav中的li,改變hash值
                    for (var j = 0;j<navLi.length;j++){
                        navLi[j].className = '';
                    }
                    location.hash = 'page' + (i + 1);
                    this.className='tabCur'
                }
            })(i);
        }
        location.hash = 'page1';   //每次頁面從新加載時都回到page1
        var oldHash = location.hash;
        window.onhashchange = function () {
            var newHash = location.hash;
            var oldPage = document.querySelector(oldHash);
            var newPage = document.querySelector(newHash);
            oldPage.classList.remove('cur');
            newPage.classList.add('cur');
            oldHash = newHash;
        };
    }
</script>
</html>
相關文章
相關標籤/搜索