Microsoft AJAX Library 對中JS的封裝

 

 

Array類型的擴展:

[S]Array.add (array, item):添加一項至Array的結尾。Array.add(a, 'e');

[S]Array.addRange (array, items):將items中的項依次添加到Array的結尾。Array.addRange(a, b); a,b兩個數組

[S]Array.clear (array):清除該Array中的所有項。

[S]Array.clone (array):返回該Array的淺拷貝(Shallow Copy)。

注意:淺拷貝只包含原Array中的項,無論是引用類型還是值類型。但淺拷貝並不會複製被引用的對象,新的Array和原Array中的某個元素引用的是同一個對象的實例。

[S] Array.contains (array, item):判斷指定的項是否包含在該Array中。

[S] Array.dequeue (array):從原Array中刪除第一項,並返回該項。

[S] Array.forEach (array, method, context):依次訪問該Array中的每一項,但跳過值爲undefined的項。

[S] Array.indexOf (array, item, start):在Array中搜索某一項,並返回其在該Array中的索引。若該Array中不包含該項,則返回-1

[S] Array.insert (array, index, item) :在Array中的某一位置插入新項。

[S] Array.parse (value) :從字符串表達方式解析出真正的Array對象。

[S] Array.enqueue (array, item) :添加一項至Array的結尾。請同時參考Array.dequeue (array)

[S] Array.remove(array, item):從該Array中移除(第一次出現的)該項。

[S] Array.removeAt(array, index) :從該Array中移除指定索引位置上的項。

 

Boolean和Date類型的擴展

[S]Boolean.parse (value ) :從字符串表示的布爾值解析成相應的Boolean類型。value參數必須爲“true”或“false”二者之一,不區分大小寫,且可以包含空格。var b = Boolean.parse("true");

Date.format (format)格式化字符串(區域設定無關)。

Date.localeFormat (format)格式化字符串(區域設定相關)。使用Sys.CultureInfo.CurrentCulture得到區域屬性。

[S] Date.parseLocale (value, formats)從字符串表示的本地時間日期解析成相應的Date類型。使用Sys.CultureInfo.CurrentCulture得到區域屬性。

[S] Date.parseInvariant (value, formats) :從字符串表示的區域無關時間日期解析成相應的Date類型。

支持的格式:

d: 縮寫日期(e.g.: 02/17/2007)

D: 完整日期(e.g: Saturday, 17 February 2007)

t: 縮寫時間(e.g.: 22:10)

T: 完整時間(e.g.: 22:10:30)

F: 完整時間日期(e.g.: Saturday, 17 February 2007 22:10:30)

m (or M): 月和日(e.g.: February 17)

s: 可排序的時間日期(e.g.: 2007-02-17T22:10:30)

y (or Y): 年和月(e.g.: 2007 February)

 

DomElement

[S] getElementById (id, element)element所包含的元素中搜索特定id的元素,若不指定element,則默認爲document

[S] $get (id, element)Sys.UI.DomElement.getElementById的簡寫形式。

[S] addCssClass (element, className):將指定的CSS Class應用至該元素。

[S] containsCssClass (element, className):判斷該元素是否應用了指定的CSS Class

[S] removeCssClass (element, className):從該元素中移除指定的CSS Class

[S] toggleCssClass (element, className):若元素已經應用了該CSS Class,則將其移除;否則添加。

[S] getLocation (element):取得元素相對於瀏覽器左上角的絕對位置,滾動出頁面可見區域之外的距離也計算在內。

[S] setLocation (element, x, y):設定元素相對於其定位元素左上角的位置。定位元素是指元素最近的應用了position(非static值)的祖先元素。

[S] getBounds (element):取得元素的絕對位置以及其長寬,返回值對象包括如下幾個屬性:

x, y:取得元素相對於瀏覽器左上角的絕對位置,與Sys.UI.DomElement.getLocation()一樣。

width:元素的寬度,包括borderpadding以及滾動部分。

height:元素的高度,包括borderpadding以及滾動部分。

var article = $get('article');

var bounds = Sys.UI.DomElement.getBounds (article);

Sys.Debug.traceDump (bounds, 'Article position and size');

 

DomEvent:

[S] $addHandler (element, eventName, handler):爲DOM元素添加某一事件的處理函數,事件名稱應去掉“on”前綴。

注意:在事件處理函數中,this指向的是element,而不一定是發出該事件的元素。

Sys.UI.DomEvent.addHandler (element, "click", clickHandler);

[S] $addHandlers (element, events, handlerOwner) :爲DOM元素添加多個事件處理函數,events是一個事件處理函數的字典。

注意:在事件處理函數中,若指定了handlerOwner,那麼this將指向該handlerOwner,否則將指向element

$addHandlers ($get ("article"), {

    mouseover: onMouseOver,

    mouseout: onMouseOut

});

[S] $clearHandlers (element):移除指定DOM元素所有的事件處理函數。

Sys.UI.DomEvent.clearHandlers (element);

[S] $removeHandler (element, eventName, handler):爲DOM元素移除指定的事件處理函數。

Sys.UI.DomEvent.removeHandler (element, "click", clickHandler);

preventDefault ():阻止執行默認的事件處理函數。例如若阻止了a元素的onclick事件,那麼將不會引發頁面導航。

stopPropagation ():阻止事件冒泡傳遞至父元素。

 

Event對象的屬性:

altKey:判斷觸發事件時Alt鍵是否被按下。

button:得到觸發事件的鼠標按鍵。可選值爲Sys.UI.MouseButton枚舉(leftButtonmiddleButtonrightButton)。

charCode:得到觸發事件時的鍵盤按鍵代碼。可以爲Sys.UI.Key枚舉(backspace, tab, enter,esc, space, pageUp, pageDown, end, home, left, up, right, down, del)。

clientX:鼠標指針相對於文檔可見區域的X座標。

clientY:鼠標指針相對於文檔可見區域的Y座標。

ctrlKey:判斷觸發事件時Ctrl鍵是否被按下。

offsetX:鼠標指針相對於觸發事件元素左側邊緣的偏移位置。

offsetY:鼠標指針相對於觸發事件元素上邊緣的偏移位置。

rawEvent:原始的DOM事件。

screenX:鼠標指針相對於瀏覽者屏幕的X座標。

screenY:鼠標指針相對於瀏覽者屏幕的Y座標。

shiftKey:判斷觸發事件時Shift鍵是否被按下。

target:觸發事件的對象。

type:事件名稱(例如“click”)。

 

NumberError類型的擴展:

Number.format (format):用指定的format格式化數字(區域設定無關)。

Number.localeFormat (format):用指定的format格式化數字(區域設定相關)。

支持的格式:

p:將數字轉爲百分比字符串(e.g.: -1,234.56 %

d:將數字裝化爲十進制字符串,沒有逗號分隔符(e.g.: -1234.56

c:將數字轉化爲貨幣金額形式(e.g.: (¤1,234.56)

n:將數字串化爲逗號三位分隔(-d,ddd,ddd.ddd")形式(e.g.: -1,234.56

 

[S] Number.parseLocale (value) :從字符串表示的本地數字解析成相應的Number類型。使用Sys.CultureInfo.CurrentCulture得到當前的區域屬性。

[S] Number.parseInvariant (value):從字符串表示的本地數字解析成相應的浮點數Number類型。value中可以包含逗號分隔符(,)或是正負(+-)號。

 

Error相關的方法:

[S] Error.argument:根據指定的異常信息和非法的參數創建一個Sys.ArgumentException類型的異常。

[S] Error.argumentNull:根據指定的異常信息和爲Null的參數創建一個Sys.ArgumentNullException 類型的異常。

[S] Error.argumentType:根據指定的異常信息、期待參數類型和實際參數類型創建一個Sys.ArgumentTypeException 類型的異常。

[S] Error.argumentUndefined:根據指定的異常信息和爲定義的參數創建一個Sys.ArgumentUndefinedException類型的異常。

[S] Error.create:根據指定的異常信息創建一個Error對象。

[S] Error.invalidOperation:根據指定的異常信息和引發該異常的參數創建一個Sys.InvalidOperationException 類型的異常。

[S] Error.notImplemented:根據指定的異常信息創建一個Sys.NotImplementedException類型的異常。

[S] Error.argumentOutOfRange:根據指定的異常信息和引發該異常的參數創建一個Sys.ArgumentOutOfRangeException類型的異常。

[S] Error.parameterCount:根據指定的異常信息創建一個Sys.ParameterCountException 類型的異常。

Error.popstackFrame:將該Error實例的fileNamelineNumber字段更新爲該Error被擲出時的位置,而不是該Error被創建時的位置。

 

StringObject類型的擴展

String.endsWith (suffix):判斷該String是否以指定的後綴結束。

[S] String.format (format, args):將該String中的各個格式化項用相應的參數值替代。args可以爲單一的Object,或是一個包含多個項的Array

[S] String.localeFormat (format, args):功能與String.format (format, args)類似,不過格式化時與區域設定相關。

String.startsWith (prefix):判斷該String是否以指定的前綴開始。請參考String.endsWith (suffix)

String.trim ()返回一個原String的拷貝,但將原String開頭和結尾部分的所有空白字符(例如空格或Tab)都移除。

String.trimEnd ():返回一個原String的拷貝,但將原String結尾部分的所有空白字符(例如空格或Tab)都移除。

String.trimStart ():返回一個原String的拷貝,但將原String開頭部分的所有空白字符(例如空格或Tab)都移除。

[S] Object.getType (instance):返回指定對象的類型,請參考Object.getTypeName (instance)

[S] Object.getTypeName (instance):返回一個表示對象在運行時的完全限定類型的字符串。

 

其他:

Sys.Browsser

agent:表示瀏覽器類型 g 表示瀏覽器類型

Sys.Browser.InternetExplorer

Sys.Browser.FireFoxSys.Browser.Safari y y

Sys.Browser.Opera

hasDebuggerStatement:是否支持“debugger”命令

name:瀏覽器名稱 name:瀏覽器名稱

version:瀏覽器版本

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章