document语法与DOM基本语法

目录

Document 对象集合

Document 对象属性

Document 对象方法

DOM:宿主对象

对象的 HTML DOM 树

查找 HTML 元素

改变 HTML 元素

添加和删除元素

添加事件处理程序

查找 HTML 对象


Document 对象集合

集合描述
[all]提供对文档中所有 HTML 元素的访问。
[anchors]返回对文档中所有 Anchor 对象的引用。
applets返回对文档中所有 Applet 对象的引用。
[forms]返回对文档中所有 Form 对象引用。
[images]返回对文档中所有 Image 对象引用。
[links]返回对文档中所有 Area 和 Link 对象引用。

Document 对象属性

属性描述
body提供对 <body> 元素的直接访问。对于定义了框架集的文档,该属性引用最外层的 <frameset>。
cookie设置或返回与当前文档有关的所有 cookie。
domain返回当前文档的域名。
lastModified返回文档被最后修改的日期和时间。
referrer返回载入当前文档的文档的 URL。
title返回当前文档的标题。
URL返回当前文档的 URL。

Document 对象方法

方法描述
close()关闭用 document.open() 方法打开的输出流,并显示选定的数据。
getElementById()返回对拥有指定 id 的第一个对象的引用。
getElementsByName()返回带有指定名称的对象集合。
getElementsByTagName()返回带有指定标签名的对象集合。
open()打开一个流,以收集来自任何 document.write() 或 document.writeln() 方法的输出。
write()向文档写 HTML 表达式 或 JavaScript 代码。
writeln()等同于 write() 方法,不同的是在每个表达式之后写一个换行符。

DOM:宿主对象

整个文档:document(文档节点)

一个元素(标签):element(元素节点)

元素中的文本:text(文本节点)

元素的属性:attribute(属性节点)

注释:comment(注释节点)

 var str=prompt("请输入");相当于input

对象的 HTML DOM 树

通过这个对象模型,JavaScript 获得创建动态 HTML 的所有力量:

  • JavaScript 能改变页面中的所有 HTML 元素

  • JavaScript 能改变页面中的所有 HTML 属性

  • JavaScript 能改变页面中的所有 CSS 样式

  • JavaScript 能删除已有的 HTML 元素和属性

  • JavaScript 能添加新的 HTML 元素和属性

  • JavaScript 能对页面中所有已有的 HTML 事件作出反应

  • JavaScript 能在页面中创建新的 HTML 事件

查找 HTML 元素

方法描述
document.getElementById(id)通过元素 id 来查找元素,id是个大小敏感的字符串,返回的是一个元素对象。
document.getElementsByTagName(name)通过标签名来查找元素
document.getElementsByClassName("类名")通过类名来查找元素
document.querySelector("选择器")根据指定选择器返回第一个元素对象
document.querySelectorAll("选择器")根据指定选择器返回
 1.<body>
     <div id="time">2019-9-9</div>
     <script>
         var timer=document.getElementByld(id);
         console.log(timer);-> <div id="time">2019-9-9</div>
         console.log(typeof timer);->object
         console.dir打印我们返回的元素对象,更好的查看里面的元素方法
         console.dir(timer);->div#time
 </script>
 2.
 <body>
     <ul>
         <li>生栋覆屋</li>
         <li>生栋覆屋</li>
         <li>生栋覆屋</li>
         <li>生栋覆屋</li>
         <li>生栋覆屋</li>
     </ul>
     <script>
         var lis=document.getElementByTagName("li");
         console.log(lis);->生栋覆屋,生栋覆屋,生栋覆屋,生栋覆屋,生栋覆屋.
         2.我们一次打印数组中元素,用遍历方法
         for(var i=0;i<lis.length;i++){
             console.log(lis[i]);
         }
         3.如果页面只有一个元素,返回的还是伪数组
         4.如果页面没有元素返回的是空的伪数组的形式
         5.获取某个元素(父元素)内部所有指定标签的子元素;
           父元素必须是单个元素,获取时不包括自己
           element.getElementsByTagName("标签名");
           var ol=document.getElementsByTagName("ol");
           console.log(ol.getElementsByTagName("li"));->报错
           console.log(ol[0].getElementsByTagName("li"));->....
 3.
 <body>
     <div class="box">盒子1</div>
     <div class="box">盒子2</div>
     <div id="nav">
     <ul>
         <li>首页</li>
         <li>产品</li>
 </div>
 <script>
     1.根据类名获得某些元素的集合
     var boxs=document.getElementsByClassName("box");
     console.log(boxs);->[div.box,div.box]
     2.返回指定选择器的第一个元素对象
     var firstbox=document.querySelector('.box');
     console.log(firstBox);-><div class="box">盒子1</div>
     
     var nav=document.querySelector('#nav');
     console.log(nav);  -><div id="nav"></div>
     
     var li=document.querySelector("li");
     console.log(li);-><li>首页</li>
     3.返回指定选择器的所有元素集合
     var allBox=document.querySelectorAll(".box");
     console.log(allBox)->[div.box,div.box]
 </script>

改变 HTML 元素

方法描述
element.innerHTML = new html content改变元素的 inner HTML
element.attribute = new value改变 HTML 元素的属性值
element.setAttribute(attribute, value)改变 HTML 元素的属性值
element.style.property = new style改变 HTML 元素的样式

添加和删除元素

方法描述
document.createElement(element)创建 HTML 元素
document.removeChild(element)删除 HTML 元素
document.appendChild(element)添加 HTML 元素
document.replaceChild(element)替换 HTML 元素
document.write(text)写入 HTML 输出流

添加事件处理程序

方法描述
document.getElementById(id).onclick = function(){code}向 onclick 事件添加事件处理程序

查找 HTML 对象

属性描述DOM
document.anchors返回拥有 name 属性的所有 <a> 元素。1
document.applets返回所有 <applet> 元素(HTML5 不建议使用)1
document.baseURI返回文档的绝对基准 URI3
document.body返回 body元素 var bodyEle=document.body; console.log(bodyEle)-><body><script>..</script></body> console.dir(bodyEle);->body...1
document.cookie返回文档的 cookie1
document.doctype返回文档的 doctype3
document.documentElement返回 html元素 var htm=document.documentElement; console.log(htm)->标签元素...3
document.documentMode返回浏览器使用的模式3
document.documentURI返回文档的 URI3
document.domain返回文档服务器的域名1
document.domConfig废弃。返回 DOM 配置3
document.embeds返回所有 <embed> 元素3
document.forms返回所有 <form> 元素1
document.head返回 <head> 元素3
document.images返回所有 <img> 元素1
document.implementation返回 DOM 实现3
document.inputEncoding返回文档的编码(字符集)3
document.lastModified返回文档更新的日期和时间3
document.links返回拥有 href 属性的所有 <area> 和 <a> 元素1
document.readyState返回文档的(加载)状态3
document.referrer返回引用的 URI(链接文档)1
document.scripts返回所有 <script> 元素3
document.strictErrorChecking返回是否强制执行错误检查3
document.title返回 <title> 元素1
document.URL返回文档的完整 URL1

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值