EXT核心API詳解 五

2021-08-22 18:37:49 字數 3207 閱讀 2930

eventmanager/eventobject/compositeelement/compositeelementlite類

ext.eventmanager

事件管理者中的大部分方法都在ext中有定義,主要用於事件管理

addlistener( string/htmlelement el, string eventname, function handler,

on( string/htmlelement el, string eventname, function handler, [object scope], [object options] ) : void

ondocumentready( function fn, [object scope], [boolean options] ) : void

removelistener( string/htmlelement el, string eventname, function fn ) :

un( string/htmlelement el, string eventname, function fn ) : boolean

參見ext

onwindowresize( function fn, object scope, boolean options ) : void

視窗大小變更時觸發

ontextresize( function fn, object scope, boolean options ) : void

活動文字尺寸變更時觸發

ext.eventobject

這兩個類都定義在eventmanager.js中,分開是為了邏輯上更清晰吧,這個類主要用於描述事件本身,一般用做事件處理方法的引數

另外這個害定義了一些鍵值常量,比ascii碼好記

例function handleclick(e)

var mydiv = ext.get("mydiv");

mydiv.on("click", handleclick);

//or

ext.eventmanager.on("mydiv", 'click', handleclick);

ext.eventmanager.addlistener("mydiv", 'click', handleclick);

getcharcode() : number

getkey() : number

在非webkit|khtml型別網頁中這兩個方法是一樣的,得到按鍵的值

getpagex() : number

getpagey() : number

getxy() : array

得到事件座標

getrelatedtarget() : htmlelement

得到關聯目標?我總是得到null

gettarget( [string selector], [number/mixed maxdepth], [boolean returnel] ) :

如果沒有定義selector則直接返回target屬性,如果定義了selector,則利用selector尋找祖先節點

gettime() : number

得到事件發生的時間?

getwheeldelta() : number

應該是個過時的方法,反正在ie和火狐下都不知道做什麼用的,原意應該是得到滑鼠的按鍵資訊?

hasmodifier() : boolean

事件發生時是否同時按下了ctrl/alt/shift鍵之一?

preventdefault() : void

阻止瀏覽器的預設事件?

stopevent() : void

preventdefault+stoppropagation

stoppropagation() : void

阻止事件冒泡

within( mixed el, [boolean related] ) : boolean

如果事件的目標是el或者它的子節點將返回真

ext.compositeelement類

基礎的復合元素類,為容器中每個元素建立乙個ext.element物件

雖然不是繼承自ext.element,但事實上它幾乎支援element類的所有方法

例:var els = ext.select("#some-el div.some-class", true);

els.setwidth(100);

add( string/array els ) : compositeelement

新增 css選擇器els匹配的元素 或 元素組成的陣列 到當前物件

clear() : void

清除所有元素

contains() : boolean

應該是contains(mixed el):boolean,當前復合元素中是否含有el

each( function fn, [object scope] ) : compositeelement

通過el,this,index引數為每個元素呼叫fn

fill( string/array els ) : compositeelement

clear()& add(els)

filter( string selector ) : compositeelement

過濾first() : ext.element

第乙個元素

getcount() : number

//元素的數量

indexof() : boolean

同contains一樣應該有個mixed引數

item( number index ) : ext.element

第index個元素

last() : ext.element

最後乙個元素

removeelement( mixed el, [boolean removedom] ) : compositeelement

刪除el元素

replaceelement( mixed el, mixed replacement, [boolean domreplace] ) : compositeelement

替換ext.compositeelementlite

由ext.compositeelement繼承而來,重寫了一些方法,但沒看出與父類有什麼不同

addelements /invoke /item /addlistener /each /indexof /replaceelement

EXT核心API詳解 五

ext.eventmanager eventobject compositeelement compositeelementlite ext.eventmanager 事件管理者中的大部分方法都在ext中有定義,主要用於事件管理 addlistener string htmlelement el,s...

Ext核心API詳解(四)

ext.domquery類 selector語法詳見ext類 compile string selector,string type function 編寫乙個選擇器或xpath查詢到乙個方法以方便重用,type取select 預設 或 值之一 filter array el,string sele...

Ext核心API詳解(六)

ext.fx類 對於我這樣的懶鬼而言,fx類是核心類庫中最激動人心的乙個類,它不是最重要的,卻是最實用的乙個類 定義了一些常用的特效方法,不妨自己多動手試試下面的方法,很有趣的 fadein object options ext.element 漸顯 options引數有以下屬性 callback ...