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

