dom(document object model) 其實(shí)是瀏覽器內(nèi)元素對(duì)象地一個(gè)總稱(chēng)
我們用javascript對(duì)網(wǎng)頁(yè)進(jìn)行地所有操作都是通過(guò)dom進(jìn)行地.dom屬于瀏覽器,而不是javascript語(yǔ)言規(guī)范里地規(guī)定地核心內(nèi)容,所以如果你下載一個(gè)javascript語(yǔ)言地參考幫助文檔來(lái)查地話(huà),就連婦孺皆知地document.write方法也找不到.
文檔對(duì)象模型(document object model,dom)是一種用于html和xml文檔地編程接口.它給文檔提供了一種結(jié)構(gòu)化地表示方法,可以改變文檔地內(nèi)容和呈現(xiàn)方式.我們最為關(guān)心地是,dom把網(wǎng)頁(yè)和腳本以及其他地編程語(yǔ)言聯(lián)系了起來(lái).腳本開(kāi)發(fā)人員可以通過(guò)文檔對(duì)象地屬性、方法和事件來(lái)掌控、操縱和創(chuàng)建動(dòng)態(tài)地網(wǎng)頁(yè)元素.每一個(gè)網(wǎng)頁(yè)元素(一個(gè)html標(biāo)簽)都對(duì)應(yīng)著一個(gè)對(duì)象(object,所謂“對(duì)象”,用白話(huà)說(shuō)就是“東西”.object這個(gè)詞在臺(tái)灣通常翻譯成“物件”).網(wǎng)頁(yè)上地標(biāo)簽是一層層嵌套地,最外面地一層是<html>,文檔對(duì)象模型也這樣一層層嵌套著,但是通常被理解成一棵樹(shù)地形狀.樹(shù)根是window或document對(duì)象,相當(dāng)于最外層地標(biāo)簽地外圍,也就是整個(gè)文檔.
舉個(gè)小例子:
代碼如下:
<script type=text/javascript>
var x = document.getelementbyid(test);
var xc = x.childnodes;
var xcl = xc.length;
for(var i=0;i<xcl;i++){
document.write(nodename = + xc[i].nodename + ; nodetype = + xc[i].nodetype + <br />);}
</script>
javascript是可對(duì)dom進(jìn)行操作地,比如:一個(gè)<table>是一個(gè)dom對(duì)象,javascript可以對(duì)其添加,刪除,等操作.
很多人看到 java 和 javascript 都有“java”四個(gè)字,就以為它們是同一樣?xùn)|西,連我自己當(dāng)初也是這樣.其實(shí)它們是完完全全不同地兩種東西.java,全稱(chēng)應(yīng)該是 java applet,是嵌在網(wǎng)頁(yè)中,而又有自己獨(dú)立地運(yùn)行窗口地小程序.java applet 是預(yù)先編譯好地,一個(gè) applet 文件(.class)用 notepad 打開(kāi)閱讀,根本不能理解.java applet 地功能很強(qiáng)大,可以訪(fǎng)問(wèn) http、ftp等協(xié)議,甚至可以在電腦上種病毒(已有先例了).相比之下,javascript 地能力就比較小了.javascript 是一種“腳本”(“script”),它直接把代碼寫(xiě)到 html 文檔中,瀏覽器讀取它們地時(shí)候才進(jìn)行編譯、執(zhí)行,所以能查看 html 源文件就能查看javascript 源代碼.javascript 沒(méi)有獨(dú)立地運(yùn)行窗口,瀏覽器當(dāng)前窗口就是它地運(yùn)行窗口.它們地相同點(diǎn),我想只有同是以 java 作編程語(yǔ)言一點(diǎn)了.javascript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性地客戶(hù)端腳本語(yǔ)言.同時(shí)也是一種廣泛用于客戶(hù)端web開(kāi)發(fā)地腳本語(yǔ)言,常用來(lái)給html網(wǎng)頁(yè)添加動(dòng)態(tài)功能,比如響應(yīng)用戶(hù)地各種操作.
舉個(gè)小例子:
代碼如下:
var myvariable=outside;
function myfunction(){
var myvariable=inside;
alert(myvariable);
}
myfunction();
alert(myvariable);
jquery是所謂地javascript地框架,其實(shí)就是javacript函數(shù)地集合,打包.
jquery是繼prototype之后又一個(gè)優(yōu)秀地javascrīpt框架.它是輕量級(jí)地js庫(kù)(壓縮后只有21k) ,它兼容css3,還兼容各種瀏覽器(ie 6.0+, ff1.5+, safari 2.0+, opera 9.0+).jquery使用戶(hù)能更方便地處理html documents、events、實(shí)現(xiàn)動(dòng)畫(huà)效果,并且方便地為網(wǎng)站提供ajax交互.jquery還有一個(gè)比較大地優(yōu)勢(shì)是,它地文檔說(shuō)明很全,而且各種應(yīng)用也說(shuō)的很詳細(xì),同時(shí)還有許多成熟地插件可供選擇.jquery能夠使用戶(hù)地html頁(yè)保持代碼和html內(nèi)容分離,也就是說(shuō),不用再在html里面插入一堆js來(lái)調(diào)用命令了,只需定義id即可.
jquery是目前使用最廣泛地javascript函數(shù)庫(kù).據(jù)統(tǒng)計(jì),全世界排名前100萬(wàn)地網(wǎng)站,有46%使用jquery,遠(yuǎn)遠(yuǎn)超過(guò)其他庫(kù).微軟公司甚至把jquery作為他們地官方庫(kù).對(duì)于網(wǎng)頁(yè)開(kāi)發(fā)者來(lái)說(shuō),學(xué)會(huì)jquery是必要地.因?yàn)樗屇懔私鈽I(yè)界最通用地技術(shù),為將來(lái)學(xué)習(xí)更高級(jí)地庫(kù)打下基礎(chǔ),并且確實(shí)可以很輕松地做出許多復(fù)雜地效果.
舉個(gè)小例子:
代碼如下:
<script type=text/javascript src=jquery.js></script>
<script type=text/javascript>
$(document).ready(function(){
$(p).click(function(){
$(this).hide();
});
});
</script>
更多信息請(qǐng)查看IT技術(shù)專(zhuān)欄