转载自:http://www.java3z.com/cwbwebhome/article/article9/ht30.html
从 JavaScript 的观点来看,网页上的每个 HTML标签都是一个 DOM 对象,标签的属性也是 DOM对象的属性。如:
<img id="myimg" src="./image/2.jpg" width="120"border="0">从 JavaScript的观点来看,这个
利用 JavaScript 程序可以访问 DOM对象,实际上就是用程序访问一个 HTML标签。你可以通过编程修改一个 DOM对象的属性,也就是用程序修改一个 HTML标签的属性,使标签变得可控。
DOM 对象的属性通常与相应的 HTML标签的属性相对应,名字通常也是相同的,但 DOM对象的属性需区分大小写。比如border
有个别 DOM 属性的名字和 HTML标签的属性名字不同,但它们实际上是同一个属性。比如HTML标签的
还有一些 DOM 属性没有与之对应的 HTML属性,比如
另外,DOM对象还提供有方法,可以在程序中调用。
实际上,DOM 对象不是 JavaScript特有的对象,它是一种跨平台的对象,有很多语言都提供了对DOM 对象的访问支持。JavaScript 只是其中之一。
用 JavaScript 设置或修改一个 HTML标签的属性时,首先要做的是获取这个标签所对应的DOM 对象。常用的方法有:
1、用 id 获取 DOM 对象:
如果一个标签设置了 id 属性,我们可以利用 id值访问这个标签,它的 JavaScript 代码代码为:
document.getElementByIdx( id )document
document.getElementByIdx( id)
2、用 name 获取 DOM 对象:
如果一个标签设置了 name 属性,我们可以利用name 值访问这个标签,它的 JavaScript代码代码为:
document.getElementsByName( name )说明:在一个网页中,如果为标签设置 id属性,则各个标签的 id属性值不能相同,如果为标签设置 name属性,则一个网页中可以有多个 name属性值相同的标签。
所以
3、用标签名获取 DOM 对象:
我们可以直接用标签名访问指定标签,它的JavaScript代码代码为:
document.getElementsByTagName_r( tagname )说明:由于在一个网页中,同一种标签可以出现多次,所以
比如:document.getElementsByTagName_r( "img")
比较以上三种方法,document.getElementByIdx( id)
获取了一个 DOM对象之后,我们可以为该对象的属性进行赋值,从而修改了它所对应标签的属性值。一般方法是:
DOM对象.属性名 = 值;DOM对象的属性名通常和HTML标签的属性名相同,但它要区分大小写,所以在书写时要特别注意。
例1:
<img id="image1" src="./image/2.jpg"border="0"><buttononclick="setBorder(0)">border="0"</button>
<buttononclick="setBorder(1)">border="1"</button>
<buttononclick="setBorder(3)">border="3"</button>
<buttononclick="setBorder(8)">border="8"</button>
<script type="text/javascript">
function setBorder( n )
{
}
</script>
效果为:
border="0"
本例可以通过按钮修改
首先,为了可以访问这个
在按钮中,利用事件句柄
在
例2:
<marqueeid="Mar">欢迎光临!</marquee><p><buttononclick="setDir()">改变方向</button></p>
<script type="text/javascript">
var dir = "left";
function setDir()
{
}
</script>
效果为:
欢迎光临!
改变方向
本例利用按钮修改
<marquee>
例3:
<input type="checkbox" name="cb"onclick="Count()">1<input type="checkbox" name="cb"onclick="Count()">2
<input type="checkbox" name="cb"onclick="Count()">3
<input type="checkbox" name="cb"onclick="Count()">4
<p><input type="text"id="res"></p>
<script type="text/javascript">
function Count()
{
}
</script>
效果为:
本例定义了四个复选框,当选中或取消选择时,文本框中显示出选中的复选框个数。
各复选框使用了相同的
当复选框被选中时,它的
说明:为了区分这一组复选框,在网页中不能再有其它标签的name 属性设置为“cb”。
在那些有开始标签和结束标签的 HTML标签中,开始标签和结束标签之间的内容就是标签所包含的内容。
利用JavaScript可以重新设置或修改一个标签所包含的内容。有两种方法:
DOM对象.innerHTML = 文本串;DOM对象.innerText = 文本串;DOM对象的
这两个属性的区别在于:innerHTML
注意:赋值的文本串必须写在一行中,中间不能用回车断开。
例1:
<div id="box" style="color:red;border:1px solidblue"> </div><buttononclick="setBox1()"> 1 </button>
<buttononclick="setBox2()"> 2 </button>
<buttononclick="setBox3()"> 3 </button>
<script type="text/javascript">
function setBox1()
{
}
function setBox2()
{
}
function setBox3()
{
}
</script>
效果为:
本例可以通过按钮设置
在 JS程序中,通过为
注意:在 setBox3()函数中,由于文本串中包含有双引号,必须用单引号进行分界。
例2:
<a id="a1" href="http://www.bttc.cn/"target="_blank">包头师范学院</a><p>
<button onclick="setLink();this.disabled=true">修改链接</button>
</p>
<script type="text/javascript">
function setLink()
{
}
</script>
效果为:
修改链接
本例定义了一个超链接,利用按钮可以修改链接的文本和目的地址。
在 JS 程序中,document.getElementByIdx( "a1").href
注意一个小细节,当单击“修改链接”按钮后,这个按钮就变得不可用了。这个功能是通过按钮中的