2008年12月26日

window:事件(L-Z)

window| 特徵A-M| 特徵N-Z| 方法A-F | 方法G-Z | 事件A-K| 事件L-Z
window 的事件操控器

使用這些特徵時,可以用 window.handler;也可以省略 window,直接用 handler。一般的用法是:

window.handler=函式位置

使用此法,一個事件只能設定一個操控器。可以改用 addEventListener,可以在一個事件加上多個操控器。

在 Firefox, Safari, Chrome 呼用事件操控器函式時,會將 event 物件放在第一個參數;在 IE 不會如此作。下面範例中,用指令 e = e || window.event 確保取得 event 物件。

事件操控器通常也可用在 HTML 元素。

onload

在視窗下載網頁文件時,會啟動此事件操控器。

onmousedown

用戶在視窗點擊滑鼠左鍵或右鍵,會啟動此事件操控器。在 Firefox, Safari, Chrome 可以用 window.onmousedown;在 IE 必須使用 document.body.onmousedown。可加在 HTML 元素上使用,請參考 onmousedown

可由 event 物件檢查是哪一鍵被點擊及其座標。event.button 的值,Firefox, Safari, Chrome 的定義:

  1. 0:左鍵。
  2. 1:中鍵,多已改為滾輪。
  3. 2:右鍵。

event.button 的值,IE 的定義:

  1. 0:沒有按。
  2. 1:左鍵。
  3. 2:右鍵。
  4. 3:兩鍵同時按。
  5. 4:中鍵。

event.screenX, event.screenY 放滑鼠點擊座標,以螢幕之左上角為原點 (0,0)。

event.clientX, event.clientY 放滑鼠點擊座標,以瀏覽器的展現區之左上角為原點。可以將瀏覽器變小,就可以看出與上面的差異。

onmousemove

用戶在視窗移動滑鼠,會啟動此事件操控器。在 Firefox, Safari, Chrome 可以用 window.onmousemove;在 IE 必須使用 document.body.onmousemove。可加在 HTML 元素上使用,請參考 onmousemove

onmouseout

移動滑鼠發生移出事件,會啟動此操控器。在 Firefox, Safari, Chrome 可以用 window.onmouseout;在 IE 必須使用 document.body.onmouseout。可加在 HTML 元素上使用,請參考 onmouseout。如果一個元素宣告了 onmouseout,則所謂的移出,並不是純指外在大範圍的移出此元素;如果此元素內有子元素,移入子元素的範圍,也會產生移出事件。

onmouseover

滑鼠移入視窗,會啟動此操控器。在 Firefox, Safari, Chrome 可以用 window.onmouseover;在 IE 必須使用 document.body.onmouseover。可加在 HTML 元素上使用,請參考 onmouseover。在父元素或子元素之間進出,都會產生移入移出事件。

onmouseup

用戶在視窗按滑鼠左鍵或右鍵,放開時,會啟動此事件操控器。在 Firefox, Safari, Chrome 可以用 window.onmouseup;在 IE 必須使用 document.body.onmouseup。可加在 HTML 元素上使用,請參考 onmouseup

onreset

當用戶點選重設(<input type='reset'>)時,會啟動此事件操控器。在 Firefox, Safari, Chrome 可以用 window.onreset;在 IE 必須使用於 <form> 元素。

onresize

改變視窗大小時,會啟動此事件操控器。

  • Firefox, Safari, Chrome 成功;IE 失敗。
onscroll

捲動視窗時,會啟動此事件操控器。

onselect

在 <input> 或 <textarea> 中用滑鼠選文字,會啟動此事件操控器。在 Firefox, Safari, Chrome 可以用 window.onselect;在 IE 必須使用於輸入元素。

onsubmit

當用戶點選送出(<input type='submit'>)時,會啟動此事件操控器。在 Firefox, Safari, Chrome 可以用 window.onsubmit;在 IE 必須使用於 <form> 元素。操控器函式回傳 false 可以停止系統預設的操控器。

onunload

下例中,先點選設定操控器,再點瀏覽器的重載(reload)或下載其它網頁,就會啟動事件。


©2008-2009 by ant2legs, All Rights Reserved. ant2legs 擁有其製作的文章,圖片與程式的著作權,所有權利保留。