JS、DOM和JQuery之間的關(guān)系示例分析
DOM(document object model) 其實(shí)是瀏覽器內(nèi)元素對(duì)象的一個(gè)總稱
我們用JavaScript對(duì)網(wǎng)頁進(jìn)行的所有操作都是通過DOM進(jìn)行的。DOM屬于瀏覽器,而不是JavaScript語言規(guī)范里的規(guī)定的核心內(nèi)容,所以如果你下載一個(gè)JavaScript語言的參考幫助文檔來查的話,就連婦孺皆知的document.write方法也找不到。
文檔對(duì)象模型(Document Object Model,DOM)是一種用于HTML和XML文檔的編程接口。它給文檔提供了一種結(jié)構(gòu)化的表示方法,可以改變文檔的內(nèi)容和呈現(xiàn)方式。我們最為關(guān)心的是,DOM把網(wǎng)頁和腳本以及其他的編程語言聯(lián)系了起來。腳本開發(fā)人員可以通過文檔對(duì)象的屬性、方法和事件來掌控、操縱和創(chuàng)建動(dòng)態(tài)的網(wǎng)頁元素。每一個(gè)網(wǎng)頁元素(一個(gè)HTML標(biāo)簽)都對(duì)應(yīng)著一個(gè)對(duì)象(object,所謂“對(duì)象”,用白話說就是“東西”)。網(wǎng)頁上的標(biāo)簽是一層層嵌套的,最外面的一層是<HTML>,文檔對(duì)象模型也這樣一層層嵌套著,但是通常被理解成一棵樹的形狀。樹根是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,全稱應(yīng)該是 Java Applet,是嵌在網(wǎng)頁中,而又有自己獨(dú)立的運(yùn)行窗口的小程序。Java Applet 是預(yù)先編譯好的,一個(gè) Applet 文件(.class)用 Notepad 打開閱讀,根本不能理解。Java Applet 的功能很強(qiáng)大,可以訪問 http、ftp等協(xié)議,甚至可以在電腦上種病毒(已有先例了)。相比之下,JavaScript 的能力就比較小了。JavaScript 是一種“腳本”(“Script”),它直接把代碼寫到 HTML 文檔中,瀏覽器讀取它們的時(shí)候才進(jìn)行編譯、執(zhí)行,所以能查看 HTML 源文件就能查看JavaScript 源代碼。JavaScript 沒有獨(dú)立的運(yùn)行窗口,瀏覽器當(dāng)前窗口就是它的運(yùn)行窗口。它們的相同點(diǎn),我想只有同是以 Java 作編程語言一點(diǎn)了。JavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的客戶端腳本語言。同時(shí)也是一種廣泛用于客戶端Web開發(fā)的腳本語言,常用來給HTML網(wǎng)頁添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。
舉個(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使用戶能更方便地處理HTML documents、events、實(shí)現(xiàn)動(dòng)畫效果,并且方便地為網(wǎng)站提供AJAX交互。jQuery還有一個(gè)比較大的優(yōu)勢(shì)是,它的文檔說明很全,而且各種應(yīng)用也說得很詳細(xì),同時(shí)還有許多成熟的插件可供選擇。jQuery能夠使用戶的html頁保持代碼和html內(nèi)容分離,也就是說,不用再在html里面插入一堆js來調(diào)用命令了,只需定義id即可。
jQuery是目前使用最廣泛的javascript函數(shù)庫(kù)。據(jù)統(tǒng)計(jì),全世界排名前100萬的網(wǎng)站,有46%使用jQuery,遠(yuǎn)遠(yuǎn)超過其他庫(kù)。微軟公司甚至把jQuery作為他們的官方庫(kù)。對(duì)于網(wǎng)頁開發(fā)者來說,學(xué)會(huì)jQuery是必要的。因?yàn)樗屇懔私鈽I(yè)界最通用的技術(shù),為將來學(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>
- javascript中html字符串轉(zhuǎn)化為jquery dom對(duì)象的方法
- jquery對(duì)象和javascript對(duì)象即DOM對(duì)象相互轉(zhuǎn)換
- js/jQuery對(duì)象互轉(zhuǎn)(快速操作dom元素)
- NodeJS使用jQuery選擇器操作DOM
- js和jquery對(duì)dom節(jié)點(diǎn)的操作(創(chuàng)建/追加)
- 使用js dom和jquery分別實(shí)現(xiàn)簡(jiǎn)單增刪改
- JavaScript對(duì)象之間的轉(zhuǎn)換 jQuery對(duì)象和原聲DOM
- JS/jQuery判斷DOM節(jié)點(diǎn)是否存在的簡(jiǎn)單方法
- DOM操作原生js 的bug,使用jQuery 可以消除的解決方法
- 原生JS和jQuery操作DOM對(duì)比總結(jié)
相關(guān)文章
JavaScript顯式數(shù)據(jù)類型轉(zhuǎn)換詳解
這篇文章主要介紹了JavaScript顯式數(shù)據(jù)類型轉(zhuǎn)換,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03
網(wǎng)頁中表單按回車就自動(dòng)提交的問題的解決方案
這篇文章主要介紹了網(wǎng)頁中表單按回車就自動(dòng)提交的問題的解決方案,需要的朋友可以參考下2014-11-11
在JavaScript的正則表達(dá)式中使用exec()方法
這篇文章主要介紹了在JavaScript的正則表達(dá)式中使用exec()方法,是JS入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-06-06
javascript splice數(shù)組簡(jiǎn)單操作
javascript splice數(shù)組簡(jiǎn)單操作2010-01-01
document.getElementBy("id")與$("#id")有什么區(qū)
有朋友問document.getElementBy("id")與$("#id")的區(qū)別,其實(shí)第一個(gè)就是js中獲取對(duì)象的方法, 第二個(gè)是通過自定義函數(shù)方便調(diào)用,而第三個(gè)是jquery中獲取id對(duì)象的方法2013-09-09
對(duì)JavaScript的全文搜索實(shí)現(xiàn)相關(guān)度評(píng)分的功能的方法
這篇文章主要介紹了對(duì)JavaScript的全文搜索實(shí)現(xiàn)相關(guān)度評(píng)分的功能的方法,采用了一個(gè)名為Okapi BM25的算法,文中亦有介紹,需要的朋友可以參考下2015-06-06
JavaScript CSS修改學(xué)習(xí)第二章 樣式
有時(shí)候你想看看文檔的默認(rèn)樣式。比如,你的某個(gè)段落的寬度是50%,你想知道在用戶的瀏覽器中他的確切的像素是多少。2010-02-02

