世纪经典案例之万年历

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style type="text/css">
        * { padding: 0; margin: 0; }
        li { list-style: none; }
        body { background: #f6f9fc; font-family: arial; }

        .calendar { width: 210px; margin: 0 auto; padding: 10px 10px 20px 20px; background: #eae9e9; }
        .calendar ul { width: 210px; overflow: hidden; padding-bottom: 10px; }
        .calendar li { float: left; width: 58px; height: 54px; margin: 10px 10px 0 0; border: 1px solid #fff; background: #424242; color: #fff; text-align: center; cursor: pointer; }
        .calendar li h2 { font-size: 20px; padding-top: 5px; }
        .calendar li p { font-size: 14px; }

        .calendar .active { border: 1px solid #424242; background: #fff; color: #e84a7e; }
        .calendar .active p { font-weight: bold; }

        .calendar .text { width: 178px; padding: 0 10px 10px; border: 1px solid #fff; padding-top: 10px; background: #f1f1f1; color: #555; }
        .calendar .text h2 {font-size: 14px; margin-bottom: 10px; }
        .calendar .text p { font-size: 12px; line-height: 18px; }


    </style>
</head>
<body>
<div id="tab" class="calendar">
    <ul id="box">
        <li class="active"><h2>1</h2><p>JAN</p></li>
        <li ><h2>2</h2><p>FER</p></li>
        <li ><h2>3</h2><p>MAR</p></li>
        <li ><h2>4</h2><p>APR</p></li>
        <li ><h2>5</h2><p>MAY</p></li>
        <li><h2>6</h2><p>JUN</p></li>
        <li><h2>7</h2><p>JUL</p></li>
        <li><h2>8</h2><p>AUG</p></li>
        <li><h2>9</h2><p>SEP</p></li>
        <li><h2>10</h2><p>OCT</p></li>
        <li><h2>11</h2><p>NOV</p></li>
        <li><h2>12</h2><p>DEC</p></li>
    </ul>
    <div class="text" id="txt">
        <h2>1月活动</h2>
        <p>快过年了,大家可以商量着去哪玩吧~</p>
    </div>
</div>
</body>
<script>
    var arr=['快过年了,大家可以商量着去哪玩吧~',
        '大家好好学习吧222222~~~',
        '大家好好学习吧222222333~~~',
        '大家好好学习吧222444222~~~',
        '大家好好学习555吧222222~~~',
        '大家好好学习吧666222222~~~',
        '大家好好学习吧227772222~~~',
        '大家好好学习吧28888822222~~~',
        '大家好好学习吧99999222222~~~',
        '大家好好学习10000000吧222222~~~',
        '大家好好学习吧111111222222~~~',
        '大家好好学习吧22222200000000000~~~']
   var ali=document.querySelectorAll("#box li")//不建议使用getElementsByClassName("li")因为网页中可能也有其他的li,最好通过父元素来选中他。
    var oh2=document.querySelector("#txt").firstElementChild
   var op=document.querySelector("#txt").lastElementChild

    for(var i=0;i<arr.length;i++){
        ali[i].abc=i//给每个li都编上编号这是重点。
        ali[i].onclick=function () {
//            ali[i].className=""无法将className设置为未定义,点击之后上一个还在未被清除。也有用,比如在做打分的时候,不需要唯一性,这个点击完上一个做的改变还保留
            for(var j=0;j<arr.length;j++){//用了这个循环之后,可以使每次点击之前都设置成初始样式,点击那个,那个发生改变
                ali[j].className=""
            }
            this.className = "active" //上面点击事件执行哪个li就给
//            哪个li的类名加一个active
            console.log(this.abc)//相当于被点击执行的那个i的序号
            oh2.innerHTML=this.abc+1+"月"
            op.innerHTML=arr[this.abc]
        }
    }
</script>
</html>
复制代码

 

posted @   菜鸟小何  阅读(212)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示