妙味js预热课程(二)

一、js简易日历

   1、innerHTML的使用:

   a:设置内容并为其加样式:

    <input id="txt1" type="text" />    <input id="btn1" type="button" value="设置文字" />    <div id="div1"></div>
    <style>        #div1{width:200px;height:200px;background:#ccc;}    </style>  b:为内容添加事件:(注意innerHTML的使用情况);
  <script type="text/javascript">      window.onload=function () {          var oBtn=document.getElementById("btn1");          var oTxt=document.getElementById("txt1");          var oDiv=document.getElementById("div1");          oBtn.onclick=function () {              oDiv.innerHTML=oTxt.value;          }      }  </script>                              现在开始我们来做简易日历:                           首先由html和css做出界面如下,接下来我们为其添加点击事件:  1、鼠标滑动到哪一个月份,那个月份就显示当前样式,其他月份恢复到原来样式;
<script type="text/javascript">   window.onload=function () {       var aLi=document.getElementsByTagName("li");       var i=0;       for(i=0;i<aLi.length;i++){           aLi[i].onmousemove=function () {               for(i=0;i<aLi.length;i++){                   aLi.className="";               }               this.className="active";           }       }   }</script>  2、下面的文字内容随着鼠标的滑动到哪个月份而随着改变:
<script type="text/javascript">   window.onload=function () {       var aLi=document.getElementsByTagName("li");       var oText=document.getElementById("tab").getElementsByTagName("div")[0];       var aDatas=[         "快过年了,大家快去玩吧!",           "快过年了,大家快去玩吧!",           "快过年了,大家快去玩吧!",           "快过年了,大家快去玩吧!",           "快过年了,大家快去玩吧!",                 "........"         ];       var i=0;       for(i=0;i<aLi.length;i++){           aLi.index=i;           aLi[i].onmousemove=function () {               for(i=0;i<aLi.length;i++){                   aLi.className="";               }               this.className="active";               oText.innerHTML="<h2>"+this.index+1+"月活动</h2><p>"+aDatas[this.index]+"</p>";           }       }   }</script>
这里要注意以下数组的概念......;这样一个简易的日历就完成了。

二、定时器使用:
  1、定时器的作用
  2、开启定时器
    setInterval 间隔型
    setTimeout 延时型
    两种定时器的区别
  3、停止定时器
    clearInterval
    clearTimeout

  第一步:制作两个按钮:
    <input id="btn1" type="button" value="开启定时器" />
    <input id="btn2" type="button" value="关闭定时器" />
    第二步:为这两个按钮添加点击事件:
    setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。
    setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。
  定时器打开和关闭的代码如下:
    <script type="text/javascript">
      function show() {
        alert("a");
      }
      window.onload=function () {
        var oBtn1=document.getElementById("btn1");
        var oBtn2=document.getElementById("btn2");
        var timer=null;
        oBtn1.onclick=function () {
          timer=setInterval(show,1000);
        };
        oBtn2.onclick=function () {
          clearInterval(timer)
        }
      }
    </script>
  这里要注意定义的变量timer以及如何应用它;

三、数码时钟

        

  数码时钟如何做?效果的思路:
  1、获取系统时间:
    Date对象
      getHour、getMinutes、getSeconds
  2、显示系统时间
    字符串链接
    空位补零
  3、设置图片路径
    charAt方法

  1、如何获取系统时间:
    先声明一个Date对象;
      <script type="text/javascript">
        window.onload=function () {
          var oDate=new Date();
          alert(oDate.getSeconds());
        }
      </script>
    它的作用是获取系统里面的时间;这里面的new是用来初始化一个对象;创建一个对象;然后用来获取系统时间即oDate.getSeconds();
    获取完整的时间:var str=oDate.getHours()+"点"+oDate.getMinutes()+"分"+oDate.getSeconds()+"秒";
            alert(str);

  下面对其进行布局:布局代码如下:  

      <img src="0.jpg" />      <img src="0.jpg" />      点      <img src="0.jpg" />      <img src="0.jpg" />      分      <img src="0.jpg" />      <img src="0.jpg" />      秒

  a、注意空位补零函数代码如下:
    function toDouble() {
      if(num<10){
        return "0"+num;
      }
      else{
        return ""+num;
      }
    }
  b、注意charAt方法:
    charAt() 方法可返回指定位置的字符。
      <script type="text/javascript">
        var str="Hello world!"
        document.write(str.charAt(1))
      </script>
    以上代码结果输出e。

  2、最后整个自动跳转时间代码如下:
    <script type="text/javascript">
      function toDouble() {
        if(num<10){
          return "0"+num;
        }
        else{
          return ""+num;
        }
      }
      window.onload=function () {
        var oBtn=document.getElementById("btn1");
        var aImg=document.getElementsByTagName("img");
        var i=0;
        oBtn.onclick=function updateTime() {
          var oDate=new Date();
          var str=toDouble(oDate.getHours())+toDouble(oDate.getMinutes())+toDouble(oDate.getSeconds());

          for(i=0;i<aImg.length;i++){
          aImg[i].src="img/"+str.charAt(i)+".png";
        }
        setInterval(updateTime,1000);
        updateTime();
      }
    </script>

    注意这里面用到了一个定时器来自动更新时间以及updateTime()函数的调用;

 
时间: 2024-08-29 14:37:35

妙味js预热课程(二)的相关文章

妙味js预热课程(一)

2016年5月24日(妙味课堂js预热课程-2笔记)一.前言 1.window.onload(事件):是在页面加载完成以后来执行一个功能: 如 window.onload=function(){ alert(“a”) } 这是一个匿名函数,因为在function后面括号前面没有名字: 即在页面加载完成以后弹出一个警告框! 2.如何提取行间事件: 3.为什么一定要用到onload? 二.主要内容 1.收缩展开菜单——if判断 如果菜单已经是显示的,把菜单隐藏: 如果菜单已经是隐藏的,把菜单显示.

2016年5月25日下午(妙味课堂js预热课程-4笔记二)

二.无缝滚动    如上图所示,现在很多网页都会实现这样的效果:它是如何实现的呢? 1.布局 注意如果想让一个div的位置发生改变,则最好给这个div加上一个绝对定位:position:absolute: obj.offsetLeft 指 obj 相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置,整型,单位像素. (1)这里插入一个小程序,即如何让Div移动起来:代码如下: 1 <style> 2 #div1{width:100px;height:100px;backg

2016年5月25日下午(妙味课堂js预热课程-4笔记)

一.延时显示框 首先我们要做的是制作两个显示框,当鼠标移入显示框1的时候显示框2出来,当鼠标移出的时候显示框2消失:其代码如下: <script type="text/javascript"> window.onload=function () { var oDiv1=document.getElementById("div1"); var oDiv2=document.getElementById("div2"); oDiv1.on

妙味JS学习记录(二)

在学习过程中零碎的知识点记录以及一些想法,加深印象,强化记忆. 五.Ajax ~ 无刷新数据读取:用户注册.在线地图.聊天室.webQQ.微博: Ajax能且仅能 从服务器读取一个文件,要注意文本文件和网页的编码要统一(utf-8) 只读一次,后面加载缓存,?t=1213 用get提交数据 可以用?t=new Date().getTime 使每次都重新加载: eval()计算字符串里的值,如果参数是一个表达式,eval() 函数将执行表达式.如果参数是Javascript语句,eval()将执行

妙味 js

JS的组成部分: ECMA几乎没有兼容性问题 DOM 给了js操作页面的能力,在js中就是document BOM 给了js操作浏览器的能力 变量: typeof 的返回值: 有6种 number string boolean function object undefined 字符串转化为数字(显式类型转化): alert(parseInt(12sdsd))弹出为12,parseInt的功能为从字符串中提取数字,碰到不是数字时停止. pareInt()弹回整数,pareFloat()返回小数.

妙味课堂——HTML+CSS基础笔记

妙味课堂的课程讲得非常的清楚,受益匪浅.先把HTML和CSS基础课程部分视频的学习笔记记录如下: padding #PS基础 ##前端需要的PS技能 - PS技能(前端需要):切图.修图.测量 - PS工具: - 移动工具 - 矩形选框工具 - 裁切工具 - 吸管工具 - 横排文字工具 - 手抓(快捷键:空格) - 缩放(快捷键:Ctrl + 和 Ctrl -) - 标尺(快捷键:Ctrl R,主要是拖出参考线.矩形区域选择的时候,按住Ctrl,就能贴合参考线) - 自由变换(快捷键 Ctrl

妙味课堂——JavaScript基础课程笔记

集中时间把秒微课堂JS的基础课程看完,并且认真完成了课后练习.感觉在JS方面的技能算是入了个门了.课后练习的作业完成的代码我都汇总在了这里.至于视频课的学习笔记,则记录如下. 第01课JS入门基础_热身课程 写JS的步骤 先实现布局 想出实现原理 了解JS语法 希望把某个元素移除的实现 display: none; 显示为无 visibility: hidden; 隐藏 width \ height 透明度 left \ top 拿与背景色相同的div盖住该元素 利用margin值 …… 获取元

妙味远程课堂-JS热身运动-下

html由属性名和属性值组成 属性读操作:获取.找到 元素.属性名 属性写操作:添加.替换.修改 元素.属性名=新的值 元素.innerHtml//读取元素内的html内容 元素.innerHtml=新的值//修改或替换他里面的内容 案例1 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>妙味1</title&

妙味课堂基础篇0_3

1.日历 1 JAN 2 FER 3 MAR 4 APR 5 MAY 6 JUN 7 JUL 8 AUG 9 SEP 10 OCT 11 NOV 12 DEC 1月活动 快过年了,大家可以商量着去哪玩吧- <!DOCTYPE html PUBLIC "-//W3C//h2D XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/h2D/xhtml1-transitional.h2d"> <