js中的经典案例--简易万年历
Posted zhouqingfeng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中的经典案例--简易万年历相关的知识,希望对你有一定的参考价值。
js中的经典案例--简易万年历
html代码
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</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>
下面是通过js代码实现对页面的控制,主要修改点击时页面的变话
<script type="text/javascript"> var arr=[‘快过年了,大家可以商量着去哪玩吧~‘, ‘大家好好学习吧222222~~~‘, ‘大家好好学习吧222222333~~~‘, ‘大家好好学习吧222444222~~~‘, ‘大家好好学习555吧222222~~~‘, ‘大家好好学习吧666222222~~~‘, ‘大家好好学习吧227772222~~~‘, ‘大家好好学习吧28888822222~~~‘, ‘大家好好学习吧99999222222~~~‘, ‘大家好好学习10000000吧222222~~~‘, ‘大家好好学习吧111111222222~~~‘, ‘大家好好学习吧22222200000000000~~~‘] var ali=document.querySelectorAll("#box li"); var oh2=document.getElementById("txt").children[0]; var op=document.getElementById("txt").children[1]; //创建一个循环,遍历每一个li; // 所有li绑定点击事件 // 循环立即执行,不会等事件 for(var i=0;i<ali.length;i++) //给每一个li编号; ali[i].abc=i; //点击列表时让列表变色;循环不会等事件;如果不重新遍历一次;那么点击的时候循环早遍历完了;点击时的i=ali.length; ali[i].onclick=function() for(j=0;j<ali.length;j++) //让每次li都没有class属性;每次点击后再给他添加属性; ali[j].className=""; //this指向调用这个函数的对象; console.log(this); //给当前加上class名,点到谁就会变色 this.className="active"; console.log(this.abc) //根据索引找到数组中的数据 oh2.innerHTML=this.abc+1+"月活动"; op.innerHTML=arr[this.abc]; </script>
以上是关于js中的经典案例--简易万年历的主要内容,如果未能解决你的问题,请参考以下文章