一輩子的程序員?

          愛你一生不變-芳芳!
          posts - 27, comments - 15, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          javascript事件列表解說

          Posted on 2006-08-10 20:43 boddi 閱讀(266) 評論(0)  編輯  收藏

          javascript事件列表解說

          ?
          javascript事件列表解說
          事件瀏覽器支持解說
          一般事件onclickIE3、N2 鼠標(biāo)點擊時觸發(fā)此事件
          ondblclickIE4、N4 鼠標(biāo)雙擊時觸發(fā)此事件
          onmousedownIE4、N4 按下鼠標(biāo)時觸發(fā)此事件
          onmouseupIE4、N4 鼠標(biāo)按下后松開鼠標(biāo)時觸發(fā)此事件
          onmouseoverIE3、N2 當(dāng)鼠標(biāo)移動到某對象范圍的上方時觸發(fā)此事件
          onmousemoveIE4、N4 鼠標(biāo)移動時觸發(fā)此事件
          onmouseoutIE4、N3當(dāng)鼠標(biāo)離開某對象范圍時觸發(fā)此事件
          onkeypressIE4、N4 當(dāng)鍵盤上的某個鍵被按下并且釋放時觸發(fā)此事件.
          onkeydownIE4、N4 當(dāng)鍵盤上某個按鍵被按下時觸發(fā)此事件
          onkeyupIE4、N4 當(dāng)鍵盤上某個按鍵被按放開時觸發(fā)此事件
          頁面相關(guān)事件onabortIE4、N3 圖片在下載時被用戶中斷
          onbeforeunloadIE4、N 當(dāng)前頁面的內(nèi)容將要被改變時觸發(fā)此事件
          onerrorIE4、N3 出現(xiàn)錯誤時觸發(fā)此事件
          onloadIE3、N2 頁面內(nèi)容完成時觸發(fā)此事件
          onmoveIE、N4 瀏覽器的窗口被移動時觸發(fā)此事件
          onresizeIE4、N4 當(dāng)瀏覽器的窗口大小被改變時觸發(fā)此事件
          onscrollIE4、N 瀏覽器的滾動條位置發(fā)生變化時觸發(fā)此事件
          onstopIE5、N 瀏覽器的停止按鈕被按下時觸發(fā)此事件或者正在下載的文件被中斷
          onunloadIE3、N2 當(dāng)前頁面將被改變時觸發(fā)此事件
          表單相關(guān)事件onblurIE3、N2 當(dāng)前元素失去焦點時觸發(fā)此事件
          onchangeIE3、N2 當(dāng)前元素失去焦點并且元素的內(nèi)容發(fā)生改變而觸發(fā)此事件
          onfocusIE3 、N2當(dāng)某個元素獲得焦點時觸發(fā)此事件
          onresetIE4 、N3 當(dāng)表單中RESET的屬性被激發(fā)時觸發(fā)此事件
          onsubmitIE3 、N2 一個表單被遞交時觸發(fā)此事件
          滾動字幕事件onbounceIE4、N在Marquee內(nèi)的內(nèi)容移動至Marquee顯示范圍之外時觸發(fā)此事件
          onfinishIE4、N當(dāng)Marquee元素完成需要顯示的內(nèi)容后觸發(fā)此事件
          onstartIE4、 N當(dāng)Marquee元素開始顯示內(nèi)容時觸發(fā)此事件
          編輯事件onbeforecopyIE5、N當(dāng)頁面當(dāng)前的被選擇內(nèi)容將要復(fù)制到瀏覽者系統(tǒng)的剪貼板前觸發(fā)此事件
          onbeforecutIE5、 N當(dāng)頁面中的一部分或者全部的內(nèi)容將被移離當(dāng)前頁面[剪貼]并移動到瀏覽者的系統(tǒng)剪貼板時觸發(fā)此事件
          onbeforeeditfocusIE5、N當(dāng)前元素將要進入編輯狀態(tài)
          onbeforepasteIE5、 N內(nèi)容將要從瀏覽者的系統(tǒng)剪貼板傳送[粘貼]到頁面中時觸發(fā)此事件
          onbeforeupdateIE5、 N當(dāng)瀏覽者粘貼系統(tǒng)剪貼板中的內(nèi)容時通知目標(biāo)對象
          oncontextmenuIE5、N當(dāng)瀏覽者按下鼠標(biāo)右鍵出現(xiàn)菜單時或者通過鍵盤的按鍵觸發(fā)頁面菜單時觸發(fā)的事件
          oncopyIE5、N當(dāng)頁面當(dāng)前的被選擇內(nèi)容被復(fù)制后觸發(fā)此事件
          oncutIE5、N 當(dāng)頁面當(dāng)前的被選擇內(nèi)容被剪切時觸發(fā)此事件
          ondragIE5、N 當(dāng)某個對象被拖動時觸發(fā)此事件 [活動事件]
          ondragdropIE、N4一個外部對象被鼠標(biāo)拖進當(dāng)前窗口或者幀
          ondragendIE5、N當(dāng)鼠標(biāo)拖動結(jié)束時觸發(fā)此事件,即鼠標(biāo)的按鈕被釋放了
          ondragenterIE5、N當(dāng)對象被鼠標(biāo)拖動的對象進入其容器范圍內(nèi)時觸發(fā)此事件
          ondragleaveIE5、N 當(dāng)對象被鼠標(biāo)拖動的對象離開其容器范圍內(nèi)時觸發(fā)此事件
          ondragoverIE5、N當(dāng)某被拖動的對象在另一對象容器范圍內(nèi)拖動時觸發(fā)此事件
          ondragstartIE4、N當(dāng)某對象將被拖動時觸發(fā)此事件
          ondropIE5、N在一個拖動過程中,釋放鼠標(biāo)鍵時觸發(fā)此事件
          onlosecaptureIE5、N當(dāng)元素失去鼠標(biāo)移動所形成的選擇焦點時觸發(fā)此事件
          onpasteIE5、N當(dāng)內(nèi)容被粘貼時觸發(fā)此事件
          onselect IE4、N當(dāng)文本內(nèi)容被選擇時的事件
          onselectstartIE4、N當(dāng)文本內(nèi)容選擇將開始發(fā)生時觸發(fā)的事件
          數(shù)據(jù)綁定onafterupdateIE4、N當(dāng)數(shù)據(jù)完成由數(shù)據(jù)源到對象的傳送時觸發(fā)此事件
          oncellchangeIE5、N當(dāng)數(shù)據(jù)來源發(fā)生變化時
          ondataavailableIE4、N當(dāng)數(shù)據(jù)接收完成時觸發(fā)事件
          ondatasetchangedIE4、N數(shù)據(jù)在數(shù)據(jù)源發(fā)生變化時觸發(fā)的事件
          ondatasetcompleteIE4、N當(dāng)來子數(shù)據(jù)源的全部有效數(shù)據(jù)讀取完畢時觸發(fā)此事件
          onerrorupdateIE4、N當(dāng)使用onBeforeUpdate事件觸發(fā)取消了數(shù)據(jù)傳送時,代替onAfterUpdate事件
          onrowenterIE5、N當(dāng)前數(shù)據(jù)源的數(shù)據(jù)發(fā)生變化并且有新的有效數(shù)據(jù)時觸發(fā)的事件
          onrowexitIE5、N當(dāng)前數(shù)據(jù)源的數(shù)據(jù)將要發(fā)生變化時觸發(fā)的事件
          onrowsdeleteIE5、N當(dāng)前數(shù)據(jù)記錄將被刪除時觸發(fā)此事件
          onrowsinsertedIE5、N當(dāng)前數(shù)據(jù)源將要插入新數(shù)據(jù)記錄時觸發(fā)此事件
          外部事件onafterprintIE5、N當(dāng)文檔被打印后觸發(fā)此事件
          onbeforeprintIE5、N當(dāng)文檔即將打印時觸發(fā)此事件
          onfilterchangeIE4、N當(dāng)某個對象的濾鏡效果發(fā)生變化時觸發(fā)的事件
          onhelpIE4、N當(dāng)瀏覽者按下F1或者瀏覽器的幫助選擇時觸發(fā)此事件
          onpropertychangeIE5、N當(dāng)對象的屬性之一發(fā)生變化時觸發(fā)此事件
          onreadystatechangeIE4、N當(dāng)對象的初始化屬性值發(fā)生變化時觸發(fā)此事件
          onactivate 當(dāng)對象設(shè)置為活動元素時觸發(fā)。
          onafterupdate 當(dāng)成功更新數(shù)據(jù)源對象中的關(guān)聯(lián)對象后在數(shù)據(jù)綁定對象上觸發(fā)。
          onbeforedeactivate 在 activeElement 從當(dāng)前對象變?yōu)楦肝臋n其它對象之前立即觸發(fā)。
          onbeforeupdate 當(dāng)成功更新數(shù)據(jù)源對象中的關(guān)聯(lián)對象前在數(shù)據(jù)綁定對象上觸發(fā)。
          onblur 在對象失去輸入焦點時觸發(fā)。
          oncontrolselect 當(dāng)用戶將要對該對象制作一個控件選中區(qū)時觸發(fā)。
          ondeactivate 當(dāng) activeElement 從當(dāng)前對象變?yōu)楦肝臋n其它對象時觸發(fā)。
          onerrorupdate 更新數(shù)據(jù)源對象中的關(guān)聯(lián)數(shù)據(jù)出錯時在數(shù)據(jù)綁定對象上觸發(fā)。
          onfocus 當(dāng)對象獲得焦點時觸發(fā)。
          onload 在瀏覽器完成對象的裝載后立即觸發(fā)。
          onmove 當(dāng)對象移動時觸發(fā)。
          onmoveend 當(dāng)對象停止移動時觸發(fā)。
          onmovestart 當(dāng)對象開始移動時觸發(fā)。
          onreadystatechange 當(dāng)對象狀態(tài)變更時觸發(fā)。
          onresizeend 當(dāng)用戶更改完控件選中區(qū)中對象的尺寸時觸發(fā)。
          onresizestart 當(dāng)用戶開始更改控件選中區(qū)中對象的尺寸時觸發(fā)。
          ontimeerror 當(dāng)特定時間錯誤發(fā)生時無條件觸發(fā),通常由將屬性設(shè)置為無效值導(dǎo)致。:

          JavaScript 事件串聯(lián)執(zhí)行多個處理過程的方法

          JavaScript 事件串聯(lián)執(zhí)行多個處理過程的方法

          2006-01-04 @ 15:46:42 · 作者 andot · 歸類于 JavaScript

          以前寫 JavaScript 程序時,事件都是采用

          object . event = handler ;

          的方式初始化。這種方式對于 Internet Explorer、Mozilla/Firefox 和 Opera 來說很通用。但是有一個問題就是,這種方式只能一個事件對應(yīng)一個事件處理過程。如果希望一個事件可以依次執(zhí)行多個處理過程就不好用了。

          但是 Internet Explorer 從 5.0 開始提供了一個 attachEvent 方法,使用這個方法,就可以給一個事件指派多個處理過程了。attachEvent 對于目前的 Opera 也適用。但是問題是 Mozilla/Firefox 并不支持這個方法。但是它支持另一個 addEventListener 方法,這個方法跟 attachEvent 差不多,也是用來給一個事件指派多個處理過程的。但是它們指派的事件有些區(qū)別,在 attachEvent 方法中,事件是以 “on” 開頭的,而在 addEventListener 中,事件沒有開頭的 “on”,另外 addEventListener 還有第三個參數(shù),一般這個參數(shù)指定為 false 就可以了。

          因此要想在你的程序中給一個事件指派多個處理過程的話,只要首先判斷一下瀏覽器,然后根據(jù)不同的瀏覽器,選擇使用 attachEvent 還是 addEventListener 就可以了。實例如下:

          if ( document . all ) {
          ?? ?
          window . attachEvent ( ' onload ' , handler1 ) ;
          ?? ?
          window . attachEvent ( ' onload ' , handler2 ) ;
          }
          else {
          ?? ?
          window . addEventListener ( ' load ' , handler1 , false ) ;
          ?? ?
          window . addEventListener ( ' load ' , handler2 , false ) ;
          }

          注意:attachEvent 所指派的多個過程的執(zhí)行順序是隨機的,所以這幾個過程之間不要有順序依賴。另外 attachEvent 和 addEventListener 不僅僅適用于 window 對象,其他的一些對象也支持該方法。


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 丹江口市| 阜康市| 彭水| 麻栗坡县| 双鸭山市| 金寨县| 观塘区| 海门市| 黔江区| 柘城县| 普兰县| 思茅市| 嘉峪关市| 隆子县| 改则县| 云南省| 枞阳县| 宣恩县| 盱眙县| 铅山县| 高尔夫| 天柱县| 慈溪市| 新巴尔虎右旗| 二连浩特市| 视频| 昆明市| 长宁区| 营山县| 九龙县| 茌平县| 勃利县| 宾阳县| 临潭县| 会宁县| 靖远县| 新营市| 修文县| 江安县| 天门市| 江口县|