title在html中屬于特殊的節點(diǎn)元素.因為它可以使用doucment.getElementsByTagName("title")[0]來(lái)獲
取它的標題,但卻無(wú)法用doucment.getElementsByTagName("title")[0]用更改它的值.
但是,總有解決的方法.在javascript中,只允許document.title來(lái)修改標題
如下:
<script language="javascript">
document.title="自定義標題";
</script>
在<body></body>之間的節點(diǎn)元素用document.getElementsByTagName()來(lái)獲取或修改是沒(méi)有問(wèn)題的.至于
在<body></body>之外的.那就不太清楚了.就好像這個(gè)title一樣,它自有它自己的一套方法.
其實(shí),如果不是document.body這一個(gè)東西已經(jīng)過(guò)時(shí)了,我也會(huì )想到使用document.title這個(gè)東西,但
是,document.body已經(jīng)過(guò)時(shí),我還以為 document.title也過(guò)時(shí)了.
原來(lái)兩個(gè)都沒(méi)有過(guò)時(shí),只是我誤解了而已.以前遇到過(guò)document.body解決不了的問(wèn)題,用
document.documentElement解決了就以為現在的標準不支持document.body了.其實(shí)一直都是支持的.只是
我上次是使用document.body.clientWidth來(lái)獲取網(wǎng)頁(yè)的高.這個(gè)當然是不成功的.只能用
document.documentElement.clientWidth來(lái)獲取......就是因為這個(gè),我誤解了,以為body都要用
documentElement來(lái)代替.其實(shí)我錯了.documentElement代表的是<html></html>中間的所有東西.
結論:該用document.body的還是要用document.body.不該用的時(shí)候就不要用.document.body和document.title都是符合當前javascript標準的.只是document.title的用法比較特殊!!!
js會(huì )使用document.title來(lái)代替網(wǎng)頁(yè)的title的原因是,title,head,body等標簽是缺省的唯一標簽,所以
document.title和document.body可以直接找到結果.
而title是一個(gè)結構的標簽,也就是說(shuō)title內,只能加入nodetext.而不能再加別的元素.于是它的使用又具有
特殊性.為了不讓代碼出錯.于是js中規定document.title這個(gè)對象只有一個(gè)屬性(也可以說(shuō)是沒(méi)有屬性)
document.title本身就是document對象的一個(gè)屬性.而不是它的一個(gè)子對象.于用document.title=""來(lái)更改
title
聯(lián)系客服