一、單節(jié)點(diǎn)元素操作
對(duì)節(jié)點(diǎn)元素的操作是ExtJS的核心內(nèi)容,大部分的Java操作都需要獲取頁(yè)面上某個(gè)節(jié)點(diǎn)元素,傳統(tǒng)的Java方法,是通過(guò)ID來(lái)獲得DOM節(jié)點(diǎn)的,例如我們的頁(yè)面上有一個(gè)id值為content的DIV節(jié)點(diǎn),我們想獲得這個(gè)節(jié)點(diǎn)元素,用以下代碼來(lái)獲得:
var content = getElementById('content');
而在ExtJS中,類似prototype中的$()方法,ExtJS擁有Ext.get()方法,可以使用
var content = Ext.get('content')
看起來(lái)這并沒(méi)有太大的優(yōu)勢(shì),但是通過(guò)Ext.get返回的節(jié)點(diǎn)元素,將自動(dòng)擁有快捷的、統(tǒng)一的、跨瀏覽器的接口,直接支持Cache,使多次訪問(wèn)同一節(jié)點(diǎn)元素的時(shí)候更加高效,并且直接使元素支持一些常用特效,例如:高亮,拖拽等。
例如以下的HTML代碼與js代碼:
<body id="content">
hi
</body>
Ext.onReady(() {
Ext.get('content').highlight();
});
當(dāng)頁(yè)面加載完畢之后,他將使整個(gè)頁(yè)面刷下變黃,然后又褪掉了。
二、多節(jié)點(diǎn)元素操作
ExtJS還支持一種使用Ext.select方法的多節(jié)點(diǎn)元素的操作,他將返回多個(gè)節(jié)點(diǎn)元素,與Ext.get方法一樣,Ext.select方法返回的節(jié)點(diǎn)元素同樣擁有那些Ext.get返回的節(jié)點(diǎn)元素所擁有的那些特性。
例如這樣的HTML與js代碼:
<body id="content">
<p>
段落1
</p>
<div>
字符2
</div>
<p>
段落3
</p>
</body>
Ext.onReady(() {
Ext.select('p').highlight();
});
當(dāng)頁(yè)面加載完畢之后,只有段落1和段落3變黃,然后又褪掉了。