原型 - 事件處理



事件管理是實現跨瀏覽器指令碼編寫面臨的最大挑戰之一。每個瀏覽器都有不同的方法來處理按鍵。

Prototype 框架處理所有跨瀏覽器相容性問題,並讓您免受與事件管理相關的所有麻煩。

Prototype 框架提供Event名稱空間,其中包含大量方法,所有方法都將當前事件物件作為引數,並在所有主要瀏覽器中愉快地生成您請求的資訊。

Event 名稱空間還提供了一個標準化的鍵程式碼列表,您可以將其與鍵盤相關事件一起使用。以下常量在名稱空間中定義:

序號 鍵常量及描述
1.

KEY_BACKSPACE

表示退格鍵。

2.

KEY_TAB

表示製表鍵。

3.

KEY_RETURN

表示回車鍵。

4.

KEY_ESC

表示 Esc 鍵。

5.

KEY_LEFT

表示左箭頭鍵。

6.

KEY_UP

表示上箭頭鍵。

7.

KEY_RIGHT

表示右箭頭鍵。

8.

KEY_DOWN

表示下箭頭鍵。

9.

KEY_DELETE

表示刪除鍵。

10.

KEY_HOME

表示 Home 鍵。

11.

KEY_END

表示 End 鍵。

12.

KEY_PAGEUP

表示 Page Up 鍵。

13.

KEY_PAGEDOWN

表示 Page Down 鍵。

如何處理事件

在開始之前,讓我們看看使用事件方法的一個示例。此示例演示如何捕獲發生事件的 DOM 元素。

示例

<html>
   <head>
      <title>Prototype examples</title>
      <script type = "text/javascript" src = "/javascript/prototype.js"></script>
      
      <script>
         // Register event 'click' and associated call back.
         Event.observe(document, 'click', respondToClick);
  
         // Callback function to handle the event.
         function respondToClick(event) {
            var element = event.element();
            alert("Tag Name : " + element.tagName );
         }
      </script>
   </head>

   <body>
      <p id = "note"> Click on any part to see the result.</p>
      <p id = "para">This is paragraph</p>
      <div id = "division">This is divsion.</div>
   </body>
</html>

輸出

以下是與Event相關的所有方法的完整列表。您最有可能經常使用的函式是observeelementstop

原型事件方法

注意 - 確保您至少擁有 prototype.js 1.6 版。

序號 方法及描述
1. element()

返回發生事件的 DOM 元素。

2. extend()

使用 Event.Methods 中包含的所有方法擴充套件event

3. findElement()

返回具有給定標籤名的第一個 DOM 元素,從發生事件的元素向上查詢。

4. isLeftClick()

確定與按鈕相關的滑鼠事件是否與“左”(實際上是主)按鈕有關。

5. observe()

在 DOM 元素上註冊事件處理程式。

6. pointerX()

返回滑鼠事件的絕對水平位置。

7. pointerY()

返回滑鼠事件的絕對垂直位置。

8. stop()

停止事件的傳播並阻止其預設操作最終被觸發。

9. stopObserving()

登出事件處理程式。

10. unloadCache()

登出透過 observe 註冊的所有事件處理程式。自動為您連線。自 1.6 版起不可用。

廣告