今天学到了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基础练习二之简易日历的更多相关文章

  1. 进击Node.js基础(二)

    一.一个牛逼闪闪的知识点Promise npm install bluebird 二.Promise实例 ball.html <!doctype> <!DOCTYPE html> ...

  2. Three.js基础探寻二——正交投影照相机

    本篇主要介绍照相机中的正交投影照相机. 第一篇传送门:Three.js基础探寻一 1.照相机 图形学中的照相机定义了三维空间到二维屏幕的投影方式. 针对投影方式照相机分为正交投影照相机和透视投影照相机 ...

  3. 记录21.07.23 —— Vue.js基础(二)

    Vue基础(二) 过滤器 过滤器作用 全局过滤器 输出结果 私有过滤器 输出结果 把其中一个做点修改 错误信息 自定义指令 全局自定义指令 私有自定义指令 钩子函数 注意:fond-weight是粗细 ...

  4. Node.js基础学习二之POST请求

    本篇介绍下 Node.js post 请求 需求: 用户登录,前端界面输入用户名和密码,点击登录请求后台验证,根据后台反馈的信息做出响应 前端: (1)使用form表单 (2)使用ajax异步请求 服 ...

  5. js 基础对象二

    大的分类 JavaScript 对象 JS Array JS Boolean JS Date JS Math JS Number JS String JS RegExp JS Functions JS ...

  6. 进击Node.js基础(二)promise

    一.Promise—Promise似乎是ES6中的规范 PROMISE的语言标准,PROMISE/A+规范,如何使用,在什么场景下使用 Promise时JS对异步操作场景提出的解决方案(回调,观察者模 ...

  7. JS基础(二)数据类型

    一.标量类型 1.字符串string类型:字符串需要用定界符包裹.定界符:单引号(‘’),双引号(“”). 2.数字类型:1)整型:所有整数 2)浮点型:所有浮点数 3.boolean类型:返回tru ...

  8. JS基础(二)

    21.标准事件模型的事件类型(包括4个子模块) HTMLEvents:接口为Event,支持的事件类型包括abort.blur.change.error.focus.load.resize.scrol ...

  9. JS基础知识二

    JS控制语句 switch 语句用于基于不同的条件来执行不同的动作 <script> function myFunction(){ var x; var d=new Date().getD ...

随机推荐

  1. android开发中fragment获取context

    在用到fragment时无法使用.this来指定当前context内容,android开发中fragment获取context,可以使用getActivity().getApplicationCont ...

  2. 爬虫, 获取登录者的外网IP

    笔者学习了一下用爬虫, 获取登录者的外网IP. 首先导入Jsoup的jar包 public class RetrivePage { private static String url="ht ...

  3. [IOS]swift自定义uicollectionviewcell

    刚刚接触swift以及ios,不是很理解有的逻辑,导致某些问题.这里分享一下swift自定义uicollectionviewcell 首先我的viewcontroller不是直接继承uicollect ...

  4. Xamarin的不归路-连接MAC失败

    昨天费了老大劲才配置连接好MAC虚拟机,今天居然又连接不上了. 记录一下最后的解决办法: 直接用“Add Mac”添加虚拟机,一定要填写ip地址,为啥要写ip?我也不知道,因为我填写“MacdeMac ...

  5. FK JavaScript之:ArcGIS JavaScript API之地图动画

    地图要素动画应用场景:动态显示地图上的要素的属性随着时间的改变而改变,并根据其属性的变化设置其渲染.比如:某水域项目中,随着时间的变化,动态展现水域的清淤进度 本文目的:对ArcGIS JavaScr ...

  6. 2016huasacm暑假集训训练三 D - Invitation Cards

    题目链接:http://acm.hust.edu.cn/vjudge/contest/123674#problem/D 题意:一张个向图,求从点1开始到其他各点的最短路权值和加上从其他各点到点1的最短 ...

  7. js 的match方法

    怎么调用? 字符串对象.match( 目标串 ); 返回值? 如果存在,就返回这个字符串: 否则, 返回null 实例 举一个常用的例子,判断图片路径是否包含某个字符串.

  8. SharePoint Configuration Wizard - Unable to upgrade SharePoint Products and Technologies because an upgrade is already in progress

    故障描述 当要运行SharePonit Products and Technologies Configuration Wizard的时候,出现了如下图所示的错误提示. 错误信息为: Unable t ...

  9. Hibernate主键生成策略(转)

    1.自动增长identity 适用于MySQL.DB2.MS SQL  Server,采用数据库生成的主键,用于为long.short.int类型生成唯一标识 使用SQL Server 和 MySQL ...

  10. Angular2对待一个URL的处理流程

    直到一年前我还不会想到我会写一本书出来,直到两三年前我还不会想到会把自己的业余时间放在写作(技术博客)上.当初在机缘巧合之下,我只是想把自己工作中遇到的问题总结起来,发布在博客中以供日后查阅.不想竟然 ...