zoukankan      html  css  js  c++  java
  • JavaScript(二)

    ====================================BOM=====================================
    1.描述与浏览器进行交互的方法和接口
    2.包括:
        a.弹出新的浏览器窗口
        b.移动、关闭浏览器窗口及调节浏览器窗口大小
        c.获取用户屏幕分辨率的屏幕对象
        d.WEB浏览器详细的定位对象
    3.对象:Window、Navigator、Screen、History、Location(当前页面的URL信息)

    window对象
        1.方法
            a.alert(),confirm(),prompt()
            b.open()
            c.close()
            d.setInterval    定时器
            e.clearInterval    清除定时器
            f.setTimeout    延迟
            g.clearTimeout    清除延迟
    范例:window对象

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4 <meta charset="UTF-8">
     5     <title></title>
     6 </head>
     7 <body>
     8     <a href="javascript:myOpen();">新窗口</a>
     9     <script type="text/javascript">
    10         // window.open('index.html', '_self', '');
    11         function myOpen(){
    12             /* window.open("弹出窗口的url","窗口名称","窗口特征") */
    13             window.open('index.html', '_blank', 'width=200,height=200');
    14         }
    15         
    16         // myOpen();
    17 
    18         //延迟执行
    19         // setTimeout(myOpen,1000);
    20 
    21         //定时执行,每2000毫秒就弹出新窗口
    22         // setInterval(myOpen,2000);
    23     </script>
    24 </body>
    25 </html>     

     
        2.事件
        onload:页面加载
        onclick:点击
        onfocus:焦点获取
        onblue:焦点失去
        onmouseover:鼠标进入到元素中
        onmouseout:鼠标移出元素外
        onchange:内容改变
    screen对象
    范例:screen对象

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4     <meta charset="utf-8">
     5     <title></title>
     6 </head>
     7 <body>
     8     <script type="text/javascript">
     9         
    10     alert(window.screen.width);
    11     alert(window.screen.height);
    12 
    13     // 去掉任务栏,即屏幕工作区
    14     alert(window.screen.availWidth);
    15     alert(window.screen.availHeight);
    16 
    17     </script>
    18 </body>
    19 </html>        


    location对象
        1.属性
            host:当前URL地址的主机号和端口号
            hostname:当前URL的主机名
            href:获取或设置当前的URL地址
        2.方法
            reload():重新加载当前页面
    范例:

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4     <meta charset="utf-8">
     5     <title></title>
     6 </head>
     7 <body>
     8     <input type="button"  value="刷新" onclick="window.location.reload()"></input>
     9     <input type="button"  value="显示地址" onclick="alert(window.location)"></input>
    10     /* 服务器打开,才会有主机和主机名 */
    11     <input type="button"  value="获取主机" onclick="alert(window.location.host)"></input>
    12     <input type="button" value="获取主机名" onclick="alert(window.location.hostname)"></input>
    13     <script type="text/javascript">
    14         alert(window.location.href);
    15     </script>
    16 </body>
    17 </html>


    history对象
        1.属性
            length:历史列表中的元素数目
        2.方法
            back:前一个URL
            forward:下一个URL
            go(n):n>0,历史列表往前数第n个页面;n<0,历史列表往后数第n个页面;n=0,当前页面
    范例:

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4     <meta charset="utf-8">
     5     <title></title>
     6 </head>
     7 <body>
     8     <a href="location.html">location对象</a>
     9     <a href="screen.html">screend对象</a>
    10     <a href="javascript:window.history.forward();">前进</a>
    11     <a href="javascript:window.history.go(1);">前进</a>
    12 </body>
    13 </html>


    ====================================★DOM★=====================================
    1.描述处理网页内容的方法和接口
    2.HTML和XML的应用程序接口(API)
    3.整个页面规划为层级式的节点结构
        
    1.属性:
        referrer:获取将用户引入当前页面的位置URL
        URL
    2.方法:
        write():打印/输出
        getElementById():id选择器
        getElementsByName():复选框
        getElementsByTagName():指定标签
        
    Doms元素的操作
    1.获取或设置dom元素中样式
        var val = dom元素.style.样式属性;    //获取值
        dom元素.style.样式属性 = 值;        //设置值
    2.获取或设置表单元素的值
        var val = dom元素.value;    //获取值
        dom元素.value = 值;        //设置值
    3.获取或设置dom元素的内容
        var val = dom元素.innerHTML;    //获取值
        dom元素.innerHTML = 值;        //设置值
        
    范例:

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4 <meta charset="utf-8">
     5     <title></title>
     6 </head>
     7 <body>
     8     <h1>兑奖页面</h1>
     9     <script type="text/javascript">
    10         if (document.referrer) {
    11             // statement
    12             alert("欢迎来兑奖");
    13         } else {
    14             // statement
    15             alert("请从指定的页面跳转");
    16             /* 服务器打开,才会跳转 */
    17             window.location = "window.html";
    18         }
    19     </script>
    20 </body>
    21 </html>    

       
    范例:复选框

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4     <meta charset="utf-8">
     5     <title></title>
     6 </head>
     7 <body>
     8     <table>
     9         <thead>
    10             <tr>
    11                 <th><input id="check-all" type="checkbox" onclick="selectAll();">全选</input></th>
    12             </tr>
    13         </thead>
    14         <tbody>
    15             <tr>
    16                 <td><input type="checkbox" checked="checked" name="hobby" value="travel">旅游</input></td>
    17             </tr>
    18             <tr>
    19                 <td><input type="checkbox" name="hobby" value="swim">游泳</input></td>
    20             </tr>
    21             <tr>
    22                 <td><input type="checkbox" name="hobby" value="climb">登山</input></td>
    23             </tr>
    24         </tbody>
    25     </table>
    26 
    27     <script type="text/javascript">
    28         function selectAll () {
    29              // 获取全选的复选框
    30              var checkAll = document.getElementById("check-all");
    31              var checkItems = document.getElementsByName("hobby");
    32 
    33              //循环设置每一个复选框的状态
    34              for (var i = 0; i < checkItems.length; i++) {
    35                  /* 全选和反选 */
    36                  checkItems[i].checked = checkAll.checked;
    37 
    38                  /* 只能全选 */
    39                  // checkItems[i].checked = true;
    40              }
    41         }
    42     </script>
    43 </body>
    44 </html>    

      
    范例:动态时间

     1 <!DOCTYPE html>
     2 <html>
     3 <meta charset="UTF-8">
     4 <head>
     5     <title>时间格式</title>
     6 </head>
     7 <body>
     8     <span id="currTime"></span>
     9     <script type="text/javascript">
    10         var weeks = ['星期天','星期一','星期二','星期三','星期四','星期五','星期六'];
    11         
    12         function getCurrTime () {
    13              // body...  
    14             var date = new Date();
    15             var year = date.getFullYear();
    16             var month = date.getMonth() + 1;    /* 月份值:0-11 */
    17             var day = date.getDate();    /* 日期 */
    18             var hour = date.getHours();
    19             var mi = date .getMinutes();
    20             var sec = date.getSeconds();
    21             var week = date.getDay();    /* 星期 */
    22 
    23             /* 显示两位数 */
    24             month = month > 9 ? month : '0' + month;
    25             day = day > 9 ? day : '0' + day;
    26             hour = hour > 9 ? hour : '0' + hour;
    27             mi = mi > 9 ? mi : '0' + mi;
    28             sec = sec > 9 ? sec : '0' + sec;
    29 
    30             return year + '年' + month + '月' + day + '日' + hour + ':' + mi + ':' + sec + '' + weeks[week];
    31         }
    32         
    33         function setCurrTime () {
    34              // body...  
    35              /* 没有value属性的就用这个赋值--innerHTML,        
    36                 返回或设置id="currTime"的div开始和结束之间的HTML
    37              */
    38              document.getElementById("currTime").innerHTML = getCurrTime();
    39         }
    40         window.setInterval(setCurrTime, 1000);
    41     </script>
    42 </body>
    43 </html>    

       
    范例:表单验证

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4     <meta charset="utf-8">
     5     <title></title>
     6 </head>
     7 <body>
     8     <form action="#" method="post" onsubmit="return formValid();">
     9         <div>
    10             <label for="username">用户名</label>
    11             <input type="text" name="name" id="username" placeholder="请输入用户名" autocomplete="off" />
    12         </div>
    13         <div>111</div>
    14 
    15         <div>
    16             <label for="userPass">设置密码</label>
    17             <input type="password" name="userPass" id="userPass" placeholder="请设置密码" >
    18         </div>
    19         <div>111</div>
    20 
    21         <div>
    22             <label for="userRePass">确认密码</label>
    23             <input type="password" name="userRePass" id="userRePass" placeholder="请确认密码" >
    24         </div>
    25         <div>111</div>
    26 
    27         <div>
    28             <label for="phone">中国 + 86</label>
    29             <input type="text" name="phone" id="phone" placeholder="请输入手机号" autocomplete="off" />
    30         </div>
    31         <div>111</div>
    32         
    33         <div>
    34             <label for="textarea"></label>
    35             <textarea cols="40" rows="8" name="textarea" id="textarea">
    36                 
    37             </textarea>
    38         </div>
    39         
    40         <div>
    41             <label for="checkbox"></label>
    42             <input type="checkbox" name="checkbox" id="checkbox" />我已阅读协议
    43         </div>
    44     
    45         <div>
    46             <input type="submit" value="立即注册" />
    47         </div>
    48     </form>
    49 
    50     <script type="text/javascript">
    51         function btnClick () {
    52              // body...  
    53              var checked = document.getElementById('checkbox').checked;
    54              if(!checked){
    55                  alert('请仔细阅读协议');
    56              }
    57              return checked;
    58         }
    59 
    60         function nameValid () {
    61              // body...  
    62              var value = document.getElementById('username').value;
    63              // 正则表达式
    64              var regExp = /^w{5,11}$/;
    65              var result = value.match(regexp);
    66              return result != null;
    67         }
    68 
    69         function passValid () {
    70              // body...  
    71              var value = document.getElementById('userPass').value;
    72              var regExp = /^.{6,12}$/;
    73              var result = value.match(regexp);
    74              return result != null;
    75         }
    76 
    77         function formValid () {
    78              // body...  
    79              return btnClick() && nameValid() && passValid();
    80         }
    81     </script>
    82 </body>
    83 </html>    

     
    范例:表单效果

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4     <meta charset="utf-8">
     5     <title></title>
     6 </head>
     7 <body>
     8     <input type="text" placeholder="邮箱/QQ/手机" onfocus="inputFocus(this)" onblur="inputBlur(this)" onkeyup="inputChange(this)"></input>
     9 
    10     <span id="msg"></span>
    11     
    12     <script type="text/javascript">
    13         function inputFocus (input) {
    14              // body...  
    15              input.className = 'focus';
    16         }
    17 
    18         function inputBlur (input) {
    19              // body...  
    20              input.className = '';
    21              //验证
    22              if (input.value == '') {
    23                  // statement
    24                  document.getElementById('msg').innerHTML = '账号不能为空';
    25              } else {
    26                  // statement
    27                  document.getElementById('msg').innerHTML = '';
    28              }
    29         }
    30 
    31         function inputChange (input) {
    32              // body...  
    33              if (input.value.length < 6) {
    34                  // statement
    35                  document.getElementById('msg').innerHTML = '账号长度不能小于6位';
    36              } else {
    37                  // statement
    38                  document.getElementById('msg').innerHTML = '账号正确';
    39              }
    40         }
    41 
    42     </script>
    43 </body>
    44 </html>


        
        
        
        
        
        
        
        
        
       

  • 相关阅读:
    一个经典的页面布局
    巧避new的一个原型设计模式
    讲解关于javascript的继承
    根据指定日期 算出该周的一周日期
    原型实现的一个观察者模式
    减少类之间的耦合性
    Android 代码下载
    (转)open gl 实例 demo vs2005 环境
    Tile editor 快捷键
    这是第一篇博客~
  • 原文地址:https://www.cnblogs.com/ivy-xu/p/5547670.html
Copyright © 2011-2022 走看看