zoukankan      html  css  js  c++  java
  • BOM编程

       BOM全称 Browser Object Model,浏览器对象模型。

       JavaScript是由浏览器中内置的javascript脚本解释器程序来执行javascript脚本语言的。

      为了便于对浏览器的操作,javascript封装了对浏览器的各个对象使得开发者可以方便的操作浏览器。

    1、window对象

          Window 对象是 JavaScript 层级中的顶层对象。

          Window 对象代表一个浏览器窗口或一个框架。

          Window 对象会在 <body> 或 <frameset> 每次出现时被自动创建。

    /* javascript组成部分:

                EMCAScript(基本语法)

                BOM( Browser Object Model) 浏览器对象模型.

             浏览器对象模型中把浏览器 的各个部分都是用了一个对象进行描述,如果我们要

             操作浏览器的一些属性,我就可以通过浏览器对象模型 的对象进行操作。

               

                window  代表了一个新开的窗口

                location 代表了地址栏对象。

                screen  代表了整个屏幕的对象

    window对象常用的方法:    

             open()   打开一个新的窗口。

             resizeTo() 将窗口的大小更改为指定的宽度和高度值。              moveTo() 将窗口左上角的屏幕位置移动到指定的 x 和 y 位置。

             moveBy() 相对于原来的窗口移动指定的x、y值。

             setInterval() 每经过指定毫秒值后就会执行指定的代码。

             clearInterval() 根据一个任务的ID取消的定时任务。

             setTimeout() 经过指定毫秒值后执行指定 的代码一次。

            注意: 使用window对象的任何属性与方法都可以省略window对象不写的。*/

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
        </head>
        <body>
            <input type="button" onclick="showAd()" value="open" />
            
            <input type="button" onclick="resizeToTest()" value="resize" />
            
            <input type="button" onclick="moveToTest()" value="moveTo" />
            
            <input type="button" onclick="moveByTest()" value="moveBy" />
            
            <!--<input type="button" onclick="setIntervalTest()" value="setInterval" />-->
        
            <input type="button" onclick="clearIntervalTest()" value="clearInterval" />
        </body>
        <script type="text/javascript">
        function showAd(){
            window.open("ad.html");
        }
        function resizeToTest(){
            window.resizeTo(400,400);
        }
        
        function moveToTest(){
            window.moveTo(600,300);
            
        }
        
        function moveByTest(){
            
            window.moveBy(0,50);
            
        }
        
        function setIntervalTest(){
            window.open("ad.html");
        }
        
        
        //var id=window.setInterval("setIntervalTest()",3000);    
        function clearIntervalTest(){
            window.clearInterval(id);
        }
        
        window.setTimeout("setIntervalTest()",3000)    
        </script>
    </html>

    2、事件的加载

       基本上所有的HTML元素中都可以指定事件属性。

       每个元素支持什么样事件应查询文档。

       所有的事件属性都是以on开头,后面的是事件的触发方式.

    注册事件的方式:

     方式一: 直接在html元素上注册

          /*<body onload="ready()">

     

          function ready() {

             alert("body的元素被加载完毕了..");

          }

          */

      

    方式二:可以js代码向找到对应的对象再注册。 推荐使用。

          (注:script标签要写在body标签之后)

          */

          var bodyNode = document.getElementById("body");

          bodyNode.onload = function() {

             alert("body的元素被加载完毕");

          }

     3、事件

    鼠标点击相关:

                   onclick 在用户用鼠标左键单击对象时触发。

                   ondblclick 当用户双击对象时触发。

                   onmousedown 当用户用任何鼠标按钮单击对象时触发。

                   onmouseup 当用户在鼠标位于对象之上时释放鼠标按钮时触发。

     

                鼠标移动相关:

                   onmouseout  当用户将鼠标指针移出对象边界时触发。

                   onmousemove 当用户将鼠标划过对象时触发。

     

                焦点相关的:

                   onblur 在对象失去输入焦点时触发。

                   onfocus 当对象获得焦点时触发。

     

                其他:

                   onchange 当对象或选中区的内容改变时触发。

                   onload 在浏览器完成对象的装载后立即触发。

                   onsubmit 当表单将要被提交时触发。

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
        </head>
        <body onload="onloadTest()">
            <input type="button" value="单击" onclick="onclickTest()" />
            
            <input type="button" value="双击" ondblclick="ondblclickTest()" />
            
            <input type="button" value="点击鼠标" onmousedown="onmousedownTest()" />
            
            <input type="button" value="释放鼠标" onmouseup="onmouseupTest()"/>
            
            <input type="button" value="显示时间" onmousemove="showTime()" onmouseout="hiddenTime()" />
            <span id="span"></span>
            
            用户名:<input type="text"  id="usernName" name="suer" onfocus="infoUser()" onblur="checkUser()"/>
            <span id="user"></span>
            
            城市:<select name="city" onchange="onchangeTest()">
                <option value="zz">-请选择-</option>
                <option value="zz">郑州</option>
                <option value="gy">巩义</option>
            </select>
            
            <form action="ad.html" onsubmit="onsubmitTest()">
                <input type="submit" />
            </form>
        </body>
        <script type="text/javascript">
            function onloadTest(){
                alert("ready");
            }
            
            function onclickTest(){
                alert("单击");
                
            }
            
            function ondblclickTest(){
                alert("双击");
            }
            
            function onmousedownTest(){
                alert("点击鼠标");
            }
            
            function onmouseupTest(){
                alert("释放鼠标");
            }
            
            function showTime(){
                document.getElementById("span").innerHTML=new Date().toLocaleString();
                
                
            }
            function hiddenTime(){
                document.getElementById("span").innerHTML=" ";
                
            }
            
            function infoUser(){
                document.getElementById("user").innerHTML="请输入用户名".fontcolor("green");
            }
            
            function checkUser(){
                if (document.getElementById("usernName").value.length<6) {
                    document.getElementById("user").innerHTML="用户名长度必须大于6位".fontcolor("red");
                    
                } else{
                    document.getElementById("user").innerHTML="用户名合法".fontcolor("green");
                    
                }
                
            }
            
            function onchangeTest(){
                alert("当前城市也改变");
            }
            
            
            function onsubmitTest(){
                alert("表单即将要提交");
            }
            
        </script>
    </html>

    4、location对象

    Location 对象是由 JavaScript runtime engine 自动创建的,包含有关当前 URL 的信息。

    location中的重要方法:

       href属性 设置或获取整个 URL 为字符串。

       reload() 重新装入当前页面

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
        </head>
        <script type="text/javascript">
        function showURL(){
            alert(location.href);
        }
        
        function baidu(){
            location.href="http://www.baidu.com"
        }
        
        function refresh(){
            location.reload();
        }
        
        window.setInterval("refresh()",3000);
        
        </script>
        <body>
        <input type="button" onclick="showURL() " value="显示地址栏" />
        
        <span onclick="baidu()">百度一下</span>
        
        </body>
    </html>

    5、screen对象

    Screen 对象是由 JavaScript runtime engine 自动创建的,包含有关客户机显示屏幕的信息。

                availHeight 获取系统屏幕的工作区域高度,排除 Microsoft Windows 任务栏。

                availWidth  获取系统屏幕的工作区域宽度,排除 Windows 任务栏。

                height    获取屏幕的垂直分辨率。

                width    获取屏幕的水平分辨率。

          

     

  • 相关阅读:
    【学车笔记】皮卡科目二考前笔记
    【Java学习笔记】继承和多态
    【Java学习笔记】Java中定义宏
    【读书笔记】《世界上最伟大的推销员》
    《大话设计模式》重印公告
    《大话设计模式》第29章OOTV杯超级模式大赛—模式总结(四)
    《大话设计模式》第29章OOTV杯超级模式大赛—模式总结(六)
    《大话设计模式》第29章OOTV杯超级模式大赛—模式总结(五)
    阅读不懂,图书之过——《大话设计模式》创作历程
    岁月凶残,敬请珍惜——得知早已不能过五四节时之随想
  • 原文地址:https://www.cnblogs.com/qfdy123/p/11091413.html
Copyright © 2011-2022 走看看