document
对象的属性和方法非常的多,不过,我们一般不使用它进行编写代码,通常, 操作DOM使用jQuery这个广泛使用的第三方库进行。 到目前位置,MVC和MVVM框架盛行的情况下,操作DOM既用不着document
对象, 也用不着jQuery了!但是这些仍有用处, 比如对于效率非常高的时候,使用这些底层的比较好,因为越封装,效率越低!还有就是在使用Node.js进行抓取数据的时候也可能要操作DOM,这些时候仍然有用武之地!
返回当前文档URL。
返回当前文档URL的域。
本文档的标题。通过title
元素设置的。
获得文档的标题:
var documentTitle = document.title;
修改文档的标题:
document.title = "hello";
获得文档标题,也可以使用如下的方式:
var documentTitle = document.getElementsByTagName("title")[0];
修改文档的标题不能使用如下方式:
document.getElementsByTagName("title")[0] = "hello";
本文档的字符编码格式。比如UTF-8
。
此文档的类型。比如text/html
进入此文档的URL。通过判断防止盗链。
本文档的最后修改时间。比如02/22/2016 20:41:17
与本文档相关的cookie。
与document.write(text|html)
一样,有的浏览器不会换行,要换行使用<br>
吧。
创建一个指定的HTML元素。tagName
可以是任意的HTML元素。
示例1:
var divNode = document.createElement('div');
示例2:
var scriptNode = document.createElement('script');
根据HTML元素的id
属性值,找到该元素, 因为任何元素的id
必须是唯一的,所以,我们最多只能找到一个或者找不到。
示例:
var userNameNode = document.getElementById('userName');
查找整个document
中的所有tagName
指定的HTML元素,因为一个文档中大多数元素可以出现多次。 所以结果是一个数组。
示例:
var pNodes = document.getElementsByTagName('p');
查找整个document
中的class
属性的值为className
的HTML元素,因为一个className
可以被多个元素共享。 所以结果是一个数组。
示例:
var nodes = document.getElementsByClassName('copyright');
查找整个document
中的name
属性的值为name
的那些HTML元素。结果是一个数组。
示例:
<!DOCTYPE html>
<html lang="en">
<head>
...
</head>
<body>
<form name="up"><input type="text"></form>
<div name="down"><input type="text"></div>
<script>
var upElements = document.getElementsByName("up");
console.log(upElements[0].tagName); // returns "FORM"
</script>
</body>
</html>
>