js基本功——DOM——document

目录

  集合

  属性

  方法

 

集合:

  all

    document.all是一个数组,包含document中的所有元素对象和函数对象,以下代码可以遍历该数组

1 var w = function(str=""){document.write(str+"<br>")};
2 var d = document;
3 var patt = /^\[object HTML(\w+)Element]$/;
4 for(var i in d.all){
5     w("d.all["+i+"]: "+d.all[i].toString().replace(patt,'$1').toLowerCase());
6 }

  anchors

    document.anchors是一个数组,包含document中所有的Anchor对象,以下代码可以遍历该数组

 1 <body>
 2 <a name="a"></a>
 3 </body>
 4 </html>
 5 <script>
 6 var w = function(str=""){document.write(str+"<br>")};
 7 var d = document;
 8 var patt = /^\[object HTML(\w+)Element]$/;
 9 w("d.anchors.length: "+d.anchors.length);
10 for(var i in d.anchors){
11     w("d.anchors["+i+"]: "+d.anchors[i].toString().replace(patt,'$1').toLowerCase());
12 }
13 </script>

  

  forms

    document.forms是一个数组,包含document中所有的Form对象,以下代码可以遍历该数组

 1 <body>
 2 <form>
 3     <button>click</button>
 4 </form>
 5 <form>
 6     <button>click</button>
 7 </form>
 8 </body>
 9 </html>
10 <script>
11 var w = function(str=""){document.write(str+"<br>")};
12 var d = document;
13 var patt = /^\[object HTML(\w+)Element]$/;
14 w("d.forms.length: "+d.forms.length);
15 for(var i in d.forms){
16     w("d.forms["+i+"]: "+d.forms[i].toString().replace(patt,'$1').toLowerCase());
17 }
18 </script>

  

  images

    document.images是一个数组,包含document中所有的image对象,以下代码可以遍历该数组

 1 <body>
 2 <img src="">
 3 <img src="">
 4 <img src="">
 5 <br>
 6 </body>
 7 </html>
 8 <script>
 9 var w = function(str=""){document.write(str+"<br>")};
10 var d = document;
11 var patt = /^\[object HTML(\w+)Element]$/;
12 w("d.images.length: "+d.images.length);
13 for(var i in d.images){
14     w("d.images["+i+"]: "+d.images[i].toString().replace(patt,'$1').toLowerCase());
15 }
16 </script>

  links

    document.links是一个数组,包含document中所有的Link对象,以下代码可以遍历该数组

 1 <body>
 2 <a href="http://www.1.com"></a>
 3 <a href="http://www.2.net"></a>
 4 <br>
 5 </body>
 6 </html>
 7 <script>
 8 var w = function(str=""){document.write(str+"<br>")};
 9 var d = document;
10 var patt = /^\[object HTML(\w+)Element]$/;
11 w("d.links.length: "+d.links.length);
12 for(var i in d.links){
13     w("d.links["+i+"]: "+d.links[i].toString().replace(patt,'$1').toLowerCase());
14 }
15 </script>

 

属性:

  body

    document.body定义了对<body>的引用,但是部分浏览器存在兼容问题,最好用getElementsByTagName方法获取。

  cookie

    该属性是一个可读可写的字符串,通过它可以操作与该文档相关的cookie。如果没有cookie值,则为空字符串

  domain

    该属性只读,返回下载该文档的服务器域名

  lastModified

    只读,返回本文档最后一次被修改的日期和时间

  referrer

    只读,返回null或载入当前文档的文档的URL

  title

    修改或读取当前文档的标题

  URL

    只读,返回本文档的URL

    href指的是跳转链接,src指的是加载的资源连接

 

方法:

  open()

    该方法会擦除当前文档,开启一个新的文档。

    该方法打开一个输出流,返回一个document对象并替换当前window.document

    操作完新文档后,记得用document的close方法关闭输出流

    有一种两个参数的open(mimetype,replace)方法,已经被弃用。

  close()

    关闭open方法打开的输出流。

    调用了close方法后,就不要再调用write和writeln方法,因为这些方法会隐性的调用open方法。

  getElementById('id')

  getElementsByName('name')

  getElementsByTagName('tagName')

  write()

  writeln()

    与write的区别是,writeln会在表达式后多写一个换行符

 

  

posted @ 2019-12-05 14:15  anch  阅读(102)  评论(0)    收藏  举报