ExtJS DOM元素操作經(jīng)驗(yàn)分享
更新時(shí)間:2013年08月28日 15:36:15 作者:
這篇文章的主題是分享下我使用 ExtJS 操作 DOM 元素的一些經(jīng)驗(yàn),作為一個(gè)程序員是需要不斷學(xué)習(xí)的,喜歡的朋友可以學(xué)習(xí)下
記得最早剛接觸網(wǎng)頁(yè)操作DOM元素的時(shí)候是做畢業(yè)設(shè)計(jì)的時(shí)候,用JQuery操作的。畢業(yè)工作后是從事C++方面的編程,兩年后,又重新解決了網(wǎng)頁(yè)編程,不過這次不是用JQuery了,用的是ExtJS。就我經(jīng)驗(yàn)來看,程序員是一個(gè)需要不斷學(xué)習(xí)的行業(yè)(這也是為什么周圍的同事很多都有白頭發(fā)的緣故吧)。
好了,今天這篇文章的主題是分享下我使用 ExtJS 操作 DOM 元素的一些經(jīng)驗(yàn)。
設(shè)置元素點(diǎn)擊處理函數(shù)的方法
var elem = Ext.get('start');
elem.on('click', function(e, t) {
alert(t.id);
});
查詢多個(gè)元素操作
var body = Ext.query('body')[0];
body.className = "myStyle";
在實(shí)際項(xiàng)目中,由于需要更改一類元素的信息提示樣式,如果根據(jù) css 來查找的話,當(dāng)需要消失操作時(shí),就不能繼續(xù)根據(jù) css 來查找所有的元素了。這時(shí),同事教會(huì)了我一種新的方法,如下:
<span style='display:none;' group='message_group' class='error'></span>
<span style='display:none;' group='message_group' class='error'></span>
// 這樣多個(gè)同樣屬于 group 下的元素,可以通過此種方式獲?。?
var elemMessageArray = Ext.select("span[group='message_group']");
var newCssObj = {};
if (isInfo) {
newCssObj["class"] = "info";
} else {
newCssObj["class"] = "error";
}
// 然后對(duì)每個(gè)元素重新設(shè)置css樣式就行了
elemMessageArray.each( function(el) {
el.set(newCssObj);
el.update(text);
el.show("display");
});
元素的顯示和隱藏
之前我一般用的方式
Uncompleted = Ext.get('uncompleted');
elemUncompleted.setDisplayed(true);
這種方式能夠提供動(dòng)畫效果,但是這樣的話,如果需要元素消失時(shí):元素雖然消失了,但是同樣還是會(huì)占用了元素的空間位置,不便布局。后來,同事發(fā)現(xiàn)可以采用這種方式,雖然沒有了動(dòng)畫效果,但是不會(huì)占用元素的位置:
el.show("display");
el.hide("display");
剛才發(fā)現(xiàn)文檔中的說明:
Hide this element - Uses display mode to determine whether to use "display" or "visibility". See setVisible.
仔細(xì)閱讀文檔是程序員必須要學(xué)會(huì)做的!
好了,今天這篇文章的主題是分享下我使用 ExtJS 操作 DOM 元素的一些經(jīng)驗(yàn)。
設(shè)置元素點(diǎn)擊處理函數(shù)的方法
復(fù)制代碼 代碼如下:
var elem = Ext.get('start');
elem.on('click', function(e, t) {
alert(t.id);
});
查詢多個(gè)元素操作
復(fù)制代碼 代碼如下:
var body = Ext.query('body')[0];
body.className = "myStyle";
在實(shí)際項(xiàng)目中,由于需要更改一類元素的信息提示樣式,如果根據(jù) css 來查找的話,當(dāng)需要消失操作時(shí),就不能繼續(xù)根據(jù) css 來查找所有的元素了。這時(shí),同事教會(huì)了我一種新的方法,如下:
復(fù)制代碼 代碼如下:
<span style='display:none;' group='message_group' class='error'></span>
<span style='display:none;' group='message_group' class='error'></span>
// 這樣多個(gè)同樣屬于 group 下的元素,可以通過此種方式獲?。?
var elemMessageArray = Ext.select("span[group='message_group']");
var newCssObj = {};
if (isInfo) {
newCssObj["class"] = "info";
} else {
newCssObj["class"] = "error";
}
// 然后對(duì)每個(gè)元素重新設(shè)置css樣式就行了
elemMessageArray.each( function(el) {
el.set(newCssObj);
el.update(text);
el.show("display");
});
元素的顯示和隱藏
之前我一般用的方式
復(fù)制代碼 代碼如下:
Uncompleted = Ext.get('uncompleted');
elemUncompleted.setDisplayed(true);
這種方式能夠提供動(dòng)畫效果,但是這樣的話,如果需要元素消失時(shí):元素雖然消失了,但是同樣還是會(huì)占用了元素的空間位置,不便布局。后來,同事發(fā)現(xiàn)可以采用這種方式,雖然沒有了動(dòng)畫效果,但是不會(huì)占用元素的位置:
復(fù)制代碼 代碼如下:
el.show("display");
el.hide("display");
剛才發(fā)現(xiàn)文檔中的說明:
Hide this element - Uses display mode to determine whether to use "display" or "visibility". See setVisible.
仔細(xì)閱讀文檔是程序員必須要學(xué)會(huì)做的!
相關(guān)文章
extjs3 combobox取value和text案例詳解
使用combobox時(shí),它有一個(gè)hiddenName的屬性,專門用于提交combobox中value的值,接下來介紹extjs3 combobox如何取value和text值,感興趣的朋友可以不要錯(cuò)過了啊2013-02-02學(xué)習(xí)ExtJS(一) 之基礎(chǔ)前提
學(xué)習(xí)ExtJS前提條件,大家要想學(xué)習(xí),需要一些基礎(chǔ)知識(shí)。2009-10-10ExtJS如何設(shè)置與獲取radio控件的選取狀態(tài)
radio控件的選取狀態(tài)如何設(shè)置與獲取,下面使用ExtJS來簡(jiǎn)單實(shí)現(xiàn)下,感興趣的朋友可以參考下2014-01-01extjs 時(shí)間范圍選擇自動(dòng)判斷的實(shí)現(xiàn)代碼
這篇文章主要介紹了extjs 時(shí)間范圍選擇自動(dòng)判斷的實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-06-06Extjs ajax同步請(qǐng)求時(shí)post方式參數(shù)發(fā)送方式
一般參數(shù)傳遞通過url后面跟后臺(tái)也能取到,不過看到send參數(shù)也可以發(fā)送參數(shù),試驗(yàn)了一下服務(wù)器端接受不到發(fā)送的參數(shù),在firebug里看到發(fā)送的請(qǐng)求post部分是一個(gè)串,不太象正常發(fā)送的參數(shù)。2009-08-08ExtJS Ext.MessageBox.alert()彈出對(duì)話框詳解
Ext.MessageBox是一個(gè)工具類,他繼承自O(shè)biect對(duì)象,用來生成各種風(fēng)格的信息提示對(duì)話框,Ext.Msg是該類的別名,使用Ext.MessageBox和用Ext.Msg效果是一樣的,而后者提供了更簡(jiǎn)單的方式。2010-04-04ExtJs 學(xué)習(xí)筆記基礎(chǔ)篇 Ext組件的使用
昨天剛接觸到Extjs,簡(jiǎn)單寫了篇學(xué)習(xí)筆記,今天繼續(xù)。2008-12-12