js基础练习二之简易日历
今天学到了js基础教程3,昨天的课后练习还没来的及做,这个是类似简易日历的小案例,视频还没听完,今晚继续......
先看效果图:

其实做过前面的Tab选项卡,这个就很好理解了,通过鼠标放在不同月份月份上面进而改变当前月的背景颜色,并在下面的div中显示这个月的相应信息。
新增js知识:数组,innerHTML
js代码:
<script type="text/javascript">
var arr= ['一月,新年伊始,該做點什麽呢....','二月,春天來了....','三月,可以去踏青......','最美四月,你是人間四月天....',
'五月,喲,五月天哦.....','六月,夏天要來了吧...','七月,暑假了,真好....','八月,天熱,該做點什麽呢....',
'九月,新學期到了,好好學習....','十月,豐收的季節,你呢....','十一月,注意天氣變化...','十二月,過年了.....']; window.onload=function(){
var td=document.getElementsByTagName("td");
var div1=document.getElementById("div1"); var i=0;
for(i=0; i<td.length; i++)
{
td[i].index=i;
//alert(i);
td[i].onmouseover=function()
{
for(i=0; i<td.length; i++)
{
//alert("1111");
td[i].className="";
}
this.className="mouseover";
div1.innerHTML="<h4>這是第" + (this.index+1) + "個月~</h4><p>" + arr[this.index] +"</p>" ;
};
}
};
</script>
相应css样式,及body内容:
<style type="text/css"> table{ width:400px; height:300px; text-align:center; background:url(pic/qq1.jpg); border:#CCC 1px solid; margin-left:300px; margin-top:100px;} table td{width:100px;border:#F0F 1px solid ;}
div{width:400px; height:100px; margin-left:300px; margin-top:2px; background:url(pic/qq1.jpg); border:#F0F 1px solid;} .mouseover{ background-color:#FFF;} </style>
<table>
<tr><td> 一 月<p>Jan</p> </td> <td> 二 月<p>Feb</p></td> <td>三 月<p>Mar</p></td> <td> 四 月<p>Apr</p></td></tr>
<tr><td> 五 月<p>May</p></td> <td>六 月<p>Jun</p></td> <td> 七 月<p>Jue</p></td> <td> 八月<p>Aug</p></td></tr>
<tr><td>九 月<p>Sept</p></td> <td> 十 月<p>Oct</p></td> <td> 十一月<p>Nov</p></td> <td>十二月<p>Dec</p></td></tr>
</table>
<div id="div1"></div>
注意:这里的日历为了方便我用的table,可以是<ul><li>...</li></ul>这样子,
然后因为目前body中只有一个div,所以在innerHTML时,直接用的: var div1=document.getElementById("div1");
但是当有多个div时,应该这样会更好:var div1=document.getElementById("div1").getElementsByTagName("div")[0];
js基础练习二之简易日历的更多相关文章
- 进击Node.js基础(二)
一.一个牛逼闪闪的知识点Promise npm install bluebird 二.Promise实例 ball.html <!doctype> <!DOCTYPE html> ...
- Three.js基础探寻二——正交投影照相机
本篇主要介绍照相机中的正交投影照相机. 第一篇传送门:Three.js基础探寻一 1.照相机 图形学中的照相机定义了三维空间到二维屏幕的投影方式. 针对投影方式照相机分为正交投影照相机和透视投影照相机 ...
- 记录21.07.23 —— Vue.js基础(二)
Vue基础(二) 过滤器 过滤器作用 全局过滤器 输出结果 私有过滤器 输出结果 把其中一个做点修改 错误信息 自定义指令 全局自定义指令 私有自定义指令 钩子函数 注意:fond-weight是粗细 ...
- Node.js基础学习二之POST请求
本篇介绍下 Node.js post 请求 需求: 用户登录,前端界面输入用户名和密码,点击登录请求后台验证,根据后台反馈的信息做出响应 前端: (1)使用form表单 (2)使用ajax异步请求 服 ...
- js 基础对象二
大的分类 JavaScript 对象 JS Array JS Boolean JS Date JS Math JS Number JS String JS RegExp JS Functions JS ...
- 进击Node.js基础(二)promise
一.Promise—Promise似乎是ES6中的规范 PROMISE的语言标准,PROMISE/A+规范,如何使用,在什么场景下使用 Promise时JS对异步操作场景提出的解决方案(回调,观察者模 ...
- JS基础(二)数据类型
一.标量类型 1.字符串string类型:字符串需要用定界符包裹.定界符:单引号(‘’),双引号(“”). 2.数字类型:1)整型:所有整数 2)浮点型:所有浮点数 3.boolean类型:返回tru ...
- JS基础(二)
21.标准事件模型的事件类型(包括4个子模块) HTMLEvents:接口为Event,支持的事件类型包括abort.blur.change.error.focus.load.resize.scrol ...
- JS基础知识二
JS控制语句 switch 语句用于基于不同的条件来执行不同的动作 <script> function myFunction(){ var x; var d=new Date().getD ...
随机推荐
- Jquery_类选择器笔记
$("[id^=percent]").size() ^=:表示以什么开头 $=:表示以什么结尾 ~=:表示包含什么 id:表示按id选择
- 修复VS,恢复初始状态
命令提示 输入命令: devenv.exe /resetuserdata 处理版本221优化改动:1.SQL优化,采用预编译方式并将SQL语句修改为大写,尽量减少Oracle数据库硬解析2.复用部分代 ...
- 害死人不偿命的(3n+1)猜想
卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半.这样一直反复砍下去,最后一定在某一步得到n=1.卡拉兹在1950年的世界数 ...
- python 安装nltk,使用(英文分词处理,词干化等)(Green VPN)
安装pip命令之后: sudo pip install -U pyyaml nltk import nltk nltk.download() 等待ing 目前访问不了,故使用Green VPN htt ...
- 使用 Composer 为 ThinkPHP(3.2.3)框架添加和管理组件
环境:Windows 64位 PHP 版本: 框架:ThinkPHP Tips: 组件:打包的代码,可以是一系列相关的类(class).接口(interface).特性(trait),用于解决某个具体 ...
- PHP (sendmail / PHPMailer / ezcMailComposer)发送邮件
一. 使用 PHP 内置的 mail() 函数 1. Windows 下 环境:WampServer2.5(Windows 10,Apache 2.4.9,MySQL 5.6.17,PHP 5.5.1 ...
- eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错? java.lang.ClassNotFoundException: com.branchitech.app.startup.AppStartupContextListener java.lang.ClassN
eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错?java. ...
- C# 方法返回值的个数
方法返回值类型总的来说分为值类型,引用类型,Void 有些方法显示的标出返回值 public int Add(int a,int b) { return a+b; } 有些方法隐式的返回返回值,我们可 ...
- 提高Baidu Map聚合的效率
百度的MAP的例子里提供了一个聚合效果,地址是http://developer.baidu.com/map/jsdemo.htm#c1_4 ,效果图如下图: 这个效果很赞,但效率很低,当数据量达到50 ...
- rabbitmq method之basic.consume
basic.consume指的是channel在 某个队列上注册消费者,那在这个队列有消息来了之后,就会把消息转发到给此channel处理,如果 这个队列有多个消费者,则会采用轮转的方式将消息分发给消 ...