WINDOW对象属性和方法

时间:2021-03-23 00:27:18
<!doctype html>
<html>
<!--
两种在网页中查找对象的方式:
    1. document.表单名.控件名.value
    2. document.getElementById("ID名");
★: 两个元素用同一个id选择器, 发现样式照样可以用, 但是不要这么搞, 因为结合JS之后, 就会出现问题
id只能写一个, 因为JS也不会找第2个

value属性
innerHTML属性

对象.value : value这个属性不是所有标签都有的属性, 具有value属性的标签对象才能用.value
对象.innerHTML : 所有双标签都能使用innerHTML

BOM : Browser Object Model(浏览器对象模型)
主要是用来操作浏览器这个软件的

主要分为: 地址栏对象 历史栏对象 文档对象
地址栏对象: location
    属性: location.href="地址"
    方法: location.reload(); 刷新
          reset restart reboot

历史栏对象: history
只有当多个网页在同一个窗口打开的时候,才能使用
后退: history.back()
前进: history.forward()
通用: history.go(数字)
      history.go(-1) 后退一页
      history.go(-2) 后退两页
      history.go(1) 前进一页

文档对象: document (之后详细讲)

------------ Window的一些方法 事件
Window对象就是我们的浏览器窗口对象, 它本身带了很多方法, 而且这些方法有一个特点, 不需要使用对象.方法()

所有的方法都需要对象调用, 所有Window的方法都可以不用写对象, 直接调用: alert confirm ....

打开窗口:
window.open();
    open("URL","窗口名","窗口特性");
OPEN窗口特性:  属性 = 1启用/0不用
    fullscreen 全屏
    titlebar 标题栏
    resizable 调节大小
    menubar 菜单栏
    status 状态栏
    location 地址栏
    scrollbars 滚动条
    toolbar 工具栏

Window事件驱动:
1. onclick : 点击事件
2. onload : 自动加载, 让某些方法让浏览器自动调用
3. onmouseover: 鼠标悬浮
4. onmouseout:  鼠标离开

时间操作:
延迟器: var 延迟器对象 = setTimeout("方法()",毫秒数)
★: 只调用1次
停止延迟器: 清除延迟器
    clearTimeout(延迟器对象);

定时器: var 定时器对象 = setInterval("方法()",毫秒数)
★: 调用多次
停止定时器:
    clearInterval(定时器对象)

★★★★★: 一定要注意, 方法利用时间器递归的时候不要写定时器
-->
    <head>
        <title>BOM浏览器对象模型</title>
        <style type="text/css">
            *{
                font-size:40px;
            }
            #div1{
                color:red;
                font-size:50px;
                font-family:微软雅黑;
            }
        </style>
        <script type="text/javascript">
            function testDate (){
                var date = new Date();
                var y = date.getFullYear(); //获取年份
                var m = date.getMonth()+1; //获取月份(0-11)
                var d = date.getDate(); //获取日

                var h = date.getHours(); //小时
                var mi = date.getMinutes(); //分钟
                var s = date.getSeconds();//秒
                var w = date.getDay(); //星期
                //处理分 秒 星期的数字
                if(mi<10){
                    mi = "0"+mi;
                }
                if(s<10){
                    s = "0"+s;
                }
                switch(w){
                case 1:
                    w = "一";
                break;
                case 2:
                    w = "二";
                break;
                case 3:
                    w = "三";
                break;
                case 4:
                    w = "四";
                break;
                case 5:
                    w = "五";
                break;
                case 6:
                    w = "六";
                break;
                case 0: //星期是从 0-6
                    w = "日";
                break;
                default:
                
                }

                var divObj = document.getElementById("d");

                divObj.innerHTML = y+"年"+m+"月"+d+"日  "+h+" : "+mi+" : "+s+" 星期"+w;

                //★★★★一秒过后, 调用自己啊
                //方法里面调用自己, 递归
                setTimeout("testDate()",1000);
                                
            }    
            function testID (){
                var divObj = document.getElementById("div1");
                alert(divObj.innerHTML);
            }
            function testHref (){
                //alert(location.href); 获取当前网页的地址信息
                location.href="日期函数.html";
            }
            function myReload (){
                location.reload();
            }
            var win;
            function testOpen (){ //打开窗口
                open("日期函数.html","","");
                open("2.html","","");
                open("3.html","","");
            }
            function chgImg1 (){ //鼠标悬浮改变图片
                var imgObj = document.getElementById("img");
                imgObj.src = "30.gif";
            }
            function chgImg2 (){
                var imgObj = document.getElementById("img");
                imgObj.src = "38.gif";
            }

            var s = 0;
            var time ;
            function timeStart (){ //开始
                document.getElementById("t").value = s++ ;
                //time = setTimeout("timeStart()",1000);
            }
            function timeEnd (){ //停止
                clearTimeout(time);
            }




            function timeStartInter (){ //定时器开始
                document.getElementById("t").value = s++ ;
                setInterval("timeStartInter()",1000);
            }
            //setTimeout("testHref()",3000);
        </script>
    </head>

    <body onload="testDate()">
        <input type="text" id="t" />
        <input type="button" value="开始计时" onclick="timeStart()">
        <input type="button" value="停止计时" onclick="timeEnd()">
        <input type="button" value="开始计时(定时器)" onclick="timeStartInter()">
        <div id="d">存放时间</div>
        <input type="button" value="打开一个新窗口" onclick="testOpen()">
        <a href="2.html">跳转到222222</a><br />
        <input type="button" value="测量两个同名id" onclick="testID()">
        <input type="button" value="地址栏href属性" onclick="testHref()">
        <input type="button" value="刷新" onclick="myReload()">
        <a href="日期函数.html">超链接日期函数</a>
        <div id="div1">
            我是Div1标签内容
        </div>
        <div id="div1">
            我是Div1标签另一个内容
        </div>
        <img src="38.gif" width="300px" onmouseover="chgImg1()" onmouseout="chgImg2()" id="img" />
        <img src="30.gif" width="300px" />
    </body>
</html>