JS的Document属性和方法小结


Posted in Javascript onSeptember 17, 2013

document.title //设置文档标题等价于HTML的title标签
document.bgColor //设置页面背景色
document.fgColor //设置前景色(文本颜色)
document.linkColor //未点击过的链接颜色
document.alinkColor //激活链接(焦点在此链接上)的颜色
document.vlinkColor //已点击过的链接颜色
document.URL //设置URL属性从而在同一窗口打开另一网页
document.fileCreatedDate //文件建立日期,只读属性
document.fileModifiedDate //文件修改日期,只读属性
document.charset //设置字符集 简体中文:gb2312
document.fileSize //文件大小,只读属性
document.cookie //设置和读出cookie

———————————————————————
常用对象方法

document.write() //动态向页面写入内容
document.createElement(Tag) //创建一个html标签对象
document.getElementById(ID) //获得指定ID值的对象
document.getElementsByName(Name) //获得指定Name值的对象
document.body.appendChild(oTag)
———————————————————————

body-主体子对象

document.body //指定文档主体的开始和结束等价于body>/body>
document.body.bgColor //设置或获取对象后面的背景颜色
document.body.link //未点击过的链接颜色
document.body.alink //激活链接(焦点在此链接上)的颜色
document.body.vlink //已点击过的链接颜色
document.body.text //文本色
document.body.innerText //设置body>…/body>之间的文本
document.body.innerHTML //设置body>…/body>之间的HTML代码
document.body.topMargin //页面上边距
document.body.leftMargin //页面左边距
document.body.rightMargin //页面右边距
document.body.bottomMargin //页面下边距
document.body.background //背景图片
document.body.appendChild(oTag) //动态生成一个HTML对象

常用对象事件

document.body.onclick=”func()” //鼠标指针单击对象是触发
document.body.onmouseover=”func()” //鼠标指针移到对象时触发
document.body.onmouseout=”func()” //鼠标指针移出对象时触发
———————————————————————
location-位置子对象

document.location.hash // #号后的部分
document.location.host // 域名+端口号//好像返回的是主机名localhost,没有返回端口号
document.location.hostname // 域名
document.location.href // 完整URL
document.location.pathname // 目录部分
document.location.port // 端口号
document.location.protocol // 网络协议(http:)
document.location.search // ?号后的部分
documeny.location.reload() //刷新网页
document.location.reload(URL) //打开新的网页
document.location.assign(URL) //打开新的网页
document.location.replace(URL) //打开新的网页
———————————————————————
selection-选区子对象
document.selection

例如:

<div>请选中这里的部分文字。</div> 
<div><input type="button" value="请选中部分文字,然后点击这里执行 empty" onclick="javascript:Foo();" /></div> 
<script type="text/javascript" language="javascript"> 
<!-- 
function Foo() 
{ 
document.selection.empty(); 
} 
--> 
</script>

selection的createRange方法

document.selection.createRange() 根据当前文字选择返回 TextRange 对象,或根据控件选择返回 ControlRange 对象。

配合 execCommand,在 HTML 编辑器中很有用,比如:文字加粗、斜体、复制、粘贴、创建超链接等。

这些好像都是只有在IE下才能实现。。

———————————————————————

images集合(页面中的图象)

a)通过集合引用
document.images //对应页面上的img标签
document.images.length //对应页面上img标签的个数
document.images[0] //第1个img标签
document.images[i] //第i-1个img标签

b)通过name属性直接引用
img name=”oImage”
document.images.oImage //document.images.name属性

c)引用图片的src属性
document.images.oImage.src //document.images.name属性.src

d)创建一个图象
var oImage
oImage = new Image()
document.images.oImage.src=”1.jpg”
同时在页面上建立一个img /标签与之对应就可以显示

———————————————————————-

forms集合(页面中的表单)

a)通过集合引用
document.forms //对应页面上的form标签
document.forms.length //对应页面上/formform标签的个数
document.forms[0] //第1个/formform标签
document.forms[i] //第i-1个/formform标签
document.forms[i].length //第i-1个/formform中的控件数
document.forms[i].elements[j] //第i-1个/formform中第j-1个控件

b)通过标签name属性直接引用
/formform name=”Myform”>input name=”myctrl”/>/form
document.Myform.myctrl //document.表单名.控件名

c)访问表单的属性
document.forms[i].name //对应form name>属性
document.forms[i].action //对应/formform action>属性
document.forms[i].encoding //对应/formform enctype>属性
document.forms[i].target //对应/formform target>属性

document.forms[i].appendChild(oTag) //动态插入一个控件
document.all.oDiv //引用图层oDiv
document.all.oDiv.style.display=”" //图层设置为可视
document.all.oDiv.style.display=”none” //图层设置为隐藏
document.getElementId(”oDiv”) //通过getElementId引用对象
document.getElementId(”oDiv”).style=”"
document.getElementId(”oDiv”).display=”none”
/*document.all表示document中所有对象的集合
只有ie支持此属性,因此也用来判断浏览器的种类*/

图层对象的4个属性
document.getElementById(”ID”).innerText //动态输出文本
document.getElementById(”ID”).innerHTML //动态输出HTML
document.getElementById(”ID”).outerText //同innerText
document.getElementById(”ID”).outerHTML //同innerHTML

------------------------------------------------------------------------------------------------------------------------------------------------------------------
document.readyState:判断文档是否加载完成。firefox不支持。

这个属性是只读的,传回值有以下的可能:

0-UNINITIALIZED:XML 对象被产生,但没有任何文件被加载。
1-LOADING:加载程序进行中,但文件尚未开始解析。
2-LOADED:部分的文件已经加载且进行解析,但对象模型尚未生效。
3-INTERACTIVE:仅对已加载的部分文件有效,在此情况下,对象模型是有效但只读的。
4-COMPLETED:文件已完全加载,代表加载成功。

document.onreadystatechange = subSomething;//当页面加载状态改变的时候执行这个方法. 
function subSomething() 
{ 
if(document.readyState == "complete"){ //当页面加载状态为完全结束时进入 
//你要做的操作。 
} 
else if(document.readyState=="loading"){ 
} 
}

比较好的例子:https://3water.com/article/20445.htm

说明 :onreadystatechange 事件能辨识readyState 属性的改变。

document.all(只被IE支持)

action:document.layers是Netscape 4.x专有的属性,是一个代表所有由储如<div><layer>等定位了的元素的数组通常也是用<div> 或<layer>对象的id属性来引用的,但是这里面不包含除此以外的其它元素

document.layers和document.all的用法是一样的,功能也是相同的。所在我就只介绍一种用法:
document.all的意思是文档的所有元素,也就是说它包含了当前网页的所有元素。它是以数组的形式保存元素的属性的,所以我们可以用 document.all["元素名"].属性名="属性值"来动态改变元素的属性。用这条语句,可以做出许许多多动态网页效果,如:动态变换图片、动态改变文本的背景、动态改变网页的背景、动态改变图片的大小、动态改变文字的大小各颜色等等。你简直可以动态控制所有网页元素。
document.all[]这个数组可以访问文档中所有元素。

例1(这个可以让你理解文档中哪些是对象)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title>Document.All Example</title> 
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /> 
</head> 
<body> 
<h1>Example Heading</h1> 
<hr /> 
<p>This is a <em>paragraph</em>. It is only a <em>paragraph.</em></p> 
<p>Yet another <em>paragraph.</em></p> 
<p>This final <em>paragraph</em> has <em id="special">special emphasis.</em></p> 
<hr /> 
<script type="text/javascript"> 
<!-- 
var i,origLength; 
origLength = document.all.length; 
document.write('document.all.length='+origLength+"<br />"); 
for (i = 0; i < origLength; i++) 
{ 
document.write("document.all["+i+"]="+document.all[i].tagName+"<br />"); 
} 
//--> 
</script> 
</body> 
</html>

它的执行结果是:
Example Heading

--------------------------------------------------------------------------------

This is a paragraph. It is only a paragraph.
Yet another paragraph.
This final paragraph has special emphasis.

--------------------------------------------------------------------------------

document.all.length=18
document.all[0]=!
document.all[1]=HTML
document.all[2]=HEAD
document.all[3]=TITLE
document.all[4]=META
document.all[5]=BODY
document.all[6]=H1
document.all[7]=HR
document.all[8]=P
document.all[9]=EM
document.all[10]=EM
document.all[11]=P
document.all[12]=EM
document.all[13]=P
document.all[14]=EM
document.all[15]=EM
document.all[16]=HR
document.all[17]=SCRIPT
(注意它只可以在IE上运行)

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<title>单击DIV变色</title> 
<style type="text/css"> 
<!-- 
#docid{ 
height:400px; 
width:400px; 
background-color:#999;} 
--> 
</style> 
</head> 
<body><div id="docid" name="docname" onClick="bgcolor()"></div> 
</body> 
</html> 
<script language="javascript" type="text/javascript"> 
<!-- 
function bgcolor(){ 
document.all[7].style.backgroundColor="#000" 
} 
--> 
</script>

上面的这个例子让你了解怎么访问文档中的一个特定元素,比如文档中有一个DIV
<div id="docid" name="docname"></div>,你可以通过这个DIV的ID,NAME 或INDEX属性访问这个DIV:
document.all["docid"]
document.all["docname"]
document.all.item("docid")
document.all.item("docname")
document.all[7]
document.all.tags("div")则返回文档中所有DIV数组,本例中只有一个DIV,所以用 document.all.tags("div")[0]就可以访问了。

3、使用document.all[]
例3

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title>Document.All Example #2</title> 
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /> 
</head> 
<body> 
<!-- Works in Internet Explorer and compatible --> 
<h1 id="heading1" align="center" style="font-size: larger;">DHTML Fun!!!</h1> 
<form name="testform" id="testform" action="#" method="get"> 
<br /><br /> 
<input type="button" value="Align Left" 
onclick="document.all['heading1'].align='left';" />//改变<h1& gt;</h1>标签对中的align属性的值,下面的代码作用相同 
<input type="button" value="Align Center" 
onclick="document.all['heading1'].align='center';" /> 
<input type="button" value="Align Right" 
onclick="document.all['heading1'].align='right';" /> 
<br /><br /> 
<input type="button" value="Bigger" 
onclick="document.all['heading1'].style.fontSize='xx-large';" /> 
<input type="button" value="Smaller" 
onclick="document.all['heading1'].style.fontSize='xx-small';" /> 
<br /><br /> 
<input type="button" value="Red" 
onclick="document.all['heading1'].style.color='red';" /> 
<input type="button" value="Blue" 
onclick="document.all['heading1'].style.color='blue';" /> 
<input type="button" value="Black" 
onclick="document.all['heading1'].style.color='black';" /> 
<br /><br /> 
<input type="text" name="userText" id="userText" size="30" /> 
<input type="button" value="Change Text" 
onclick="document.all['heading1'].innerText=document.testform.userText.value;" /& gt;//改变<h1></h1>标签对中的文本内容 
</form> 
</body> 
</html>
Javascript 相关文章推荐
Jquery ajax不能解析json对象,报Invalid JSON错误的原因和解决方法
Mar 27 Javascript
jQuery中even选择器的定义和用法
Dec 23 Javascript
使用javascript实现简单的选项卡切换
Jan 09 Javascript
JQuery动态添加和删除表格行的方法
Mar 09 Javascript
理解JavaScript中worker事件api
Dec 25 Javascript
简单谈谈JavaScript的同步与异步
Dec 31 Javascript
Bootstrap树形控件使用方法详解
Jan 27 Javascript
BootStrap中的table实现数据填充与分页应用小结
May 26 Javascript
Js自定义多选框效果的实例代码
Jul 05 Javascript
使用VScode 插件debugger for chrome 调试react源码的方法
Sep 13 Javascript
原生js拖拽实现图形伸缩效果
Feb 10 Javascript
Javascript组合继承方法代码实例解析
Apr 02 Javascript
JS画5角星方法介绍
Sep 17 #Javascript
js带按钮的提示框可供选择示例代码
Sep 17 #Javascript
今天是星期几的4种JS代码写法
Sep 17 #Javascript
关于javascript event flow 的一个bug详解
Sep 17 #Javascript
Node.js开发指南中的简单实例(mysql版)
Sep 17 #Javascript
JavaScript中为什么null==0为false而null大于=0为true(个人研究)
Sep 16 #Javascript
判断一个变量是数组Array类型的方法
Sep 16 #Javascript
You might like
php计算数组不为空元素个数的方法
2014/01/27 PHP
php使用正则表达式提取字符串中尖括号、小括号、中括号、大括号中的字符串
2020/04/05 PHP
解决Laravel blade模板转义html标签的问题
2019/09/03 PHP
文本框的字数限制功能jquery插件
2009/11/24 Javascript
js下通过prototype扩展实现indexOf的代码
2010/12/08 Javascript
基于jQuery的360图片展示实现代码
2012/06/14 Javascript
javascript 小数取整简单实现方式
2014/05/30 Javascript
JavaScript中使用Math.PI圆周率属性的方法
2015/06/14 Javascript
详细分析JavaScript函数定义
2015/07/16 Javascript
javascript中mouseover、mouseout使用详解
2015/07/19 Javascript
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
2015/12/10 Javascript
浅谈JavaScript中的分支结构
2016/07/01 Javascript
fullpage.js全屏滚动插件使用实例
2016/09/06 Javascript
详解XMLHttpRequest(二)响应属性、二进制数据、监测上传下载进度
2016/09/14 Javascript
Angular 4依赖注入学习教程之简介(一)
2017/06/04 Javascript
js事件委托和事件代理案例分享
2017/07/25 Javascript
vue-router 源码之实现一个简单的 vue-router
2018/07/02 Javascript
在iFrame子页面里实现模态框的方法
2018/08/17 Javascript
[01:00]一分钟回顾2018DOTA2亚洲邀请赛现场活动
2018/04/07 DOTA
Python单元测试框架unittest使用方法讲解
2015/04/13 Python
Django objects.all()、objects.get()与objects.filter()之间的区别介绍
2017/06/12 Python
简单谈谈python中的语句和语法
2017/08/10 Python
浅谈配置OpenCV3 + Python3的简易方法(macOS)
2018/04/02 Python
pytorch 实现在预训练模型的 input上增减通道
2020/01/06 Python
python 合并多个excel中同名的sheet
2021/01/22 Python
详解CSS3弹性伸缩盒
2020/09/21 HTML / CSS
html5 worker 实例(二) 图片变换效果
2013/06/24 HTML / CSS
美国山地自行车、露营、户外装备和服装购物网站:Aventuron
2018/05/05 全球购物
加利福尼亚州威尼斯的女性奢侈品设计师服装和概念店:Mona Moore
2018/09/13 全球购物
Nisbets爱尔兰:英国最大的厨房和餐饮设备供应商
2019/01/26 全球购物
意大利咖啡、浓缩咖啡和浓缩咖啡机:illy caffe
2019/03/20 全球购物
eBay荷兰购物网站:eBay.nl
2020/06/26 全球购物
一套带网友答案的.NET笔试题
2016/12/06 面试题
土木工程毕业生自荐信
2013/11/12 职场文书
市级三好学生评语
2014/12/29 职场文书
2016教师学习教育法心得体会
2016/01/19 职场文书