学习笔记之Dom_01

一、DOM(Document Object Model,文档对象模型

dom是浏览器解释完html标签后,为每个标签生成的对应的标签对象。这些对象储存在浏览器缓存中,一旦网页关闭,这些dom对象就会被销毁。(JavaScript与DOM之间的关系就是C#与.Net之间的关系

(一)DOM的意义

它的意义就是映射相应的文档对象,HTML DOM映射一个网页的方方面面的内容,他映射一个网页有什么用?其实他不仅仅是映射文档,同时他动态的提供了访问和操作文档的功能。因为有这样一种需求,例如,对于已经编写好的网页需要改写他的背景颜色,这样就需要改写他的bgcolor,怎么改写?对于已经编写好的网页,DOM正是提供了这样的一种方法,他不仅能访问读取bgcolor,他还可以改。

(二)DOM就是HTML的模型

(三)JavaScript+DOM+CSS=DHTML

HTML:只是标记网页,比如标记了一个文本框、设定了背景颜色是红色、宽度为多少像素等等

CSS:网页的“美丽外衣”,在HTML标签的Style属性中为标签设置很多属性,给网页穿上了“美丽的外衣”

DOM:获取网页中标签元素的对象,并且提供动态修改的方法

JavaScript:

二、window对象

代表当前浏览器窗口

(一)方法

1.alert()方法

2.confirm()方法

显示“确定”、“取消”对话框,按【确定】返回true,否则返回false

3.navigate()方法

重新导航到指定地址,在本网页跳转

4.setInterval()

每隔一段时间执行一段代码

5.clearInterval()

取消setInterval的定时执行,需要传入setInterval的变量名

<head>
    <title></title>
    <script type="text/javascript">
        var myInterval;
           function mySetInterval() {
           myInterval= setInterval("alert('Hi')", 2000);
       }
            
    </script>
</head>
<body>
<input type="button" value="问候" οnclick="mySetInterval()" />
<input type="button" value="停止" οnclick="clearInterval(myInterval)" />
</body>

6.setTimeout()、clearTimeout()

定时执行,只执行一次。

(二)属性

1.location.href

重新导向新地址

2.event

用来获得发生事件时的信息

<input type="button" value="按Ctrl" οnclick="location.href='Default.aspx';event.returnValue=false;" />

三、body、document对象

(一)事件

1.onload()

网页加载完毕时触发

2.onunload()

网页关闭(或离开)后触发

3.onbeforeunload()

网页准备关闭(或离开)前触发

4.其他事件

onclick(单击)、ondbclick(双击)、onkeydown(按键按下)、onkeypress(点击按键)、onkeyup(按键释放)、onmousedown(鼠标按下)、onmousemove(鼠标移动)、onmouseout(鼠标离开元素范围)、onmouseover(鼠标进入元素范围)、onmouseup(鼠标按键释放)等

(二)document对象的方法

1.write()方法

向文档中写入内容,可以在head里,也可以在body里

    <script type="text/javascript">
        document.write("<a href='http://www.baidu.com'>你好啊,亲!</a>");
    </script>

注意:在onclick等事件中写document.write()会冲掉原页面的内容,只有在页面加载过程中write才不会冲掉

2.getElementById()方法

根据输入的Id值返回一个对象

        function btnclick() {
            var txt = document.getElementById("textbox1");
            alert(txt.value);
        }

3.getElementsByName()方法

返回对象数组

        function btnclick() {
            var radios = document.getElementsByName("gender");
            for (var i = 0; i < radios.length; i++) {
                alert(radios[i].value);
            }
        }//用foreach只能得到索引值

4.getElementsByTagName()方法

返回相同标签名的对象数组

    <script type="text/javascript">
        function intiEvent() {
            var inputs = document.getElementsByTagName("input");
            for (var i = 0; i < inputs.length; i++) {
                var input = inputs[i];
                input.onclick = btnClick;
            }
        }
        function btnClick() {
            var inputs = document.getElementsByTagName("input");
            for (var i = 0; i < inputs.length; i++) {
                var input = inputs[i];
                if (input == window.event.srcElement) {
                    input.value = "呜呜";
                }
                else {
                    input.value = "哈哈";
                }
            }
        }
    </script>

5.同意协议案例

    <script type="text/javascript">
    var time=10;
        function countDown() {
            var btnreg = document.getElementById("btnreg");
            if (btnreg) {//判断btnreg是否被加载
                if (time > 0) {
                    btnreg.value = "请阅读该协议,剩余" + time + "秒";
                    time--;
                }
                else {
                    btnreg.value = "同意";
                    btnreg.disabled = "";
                }
            }
        }
        setInterval("countDown()", 1000);
    </script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值