Prototype - 事件处理

事件管理是实现跨浏览器脚本的最大挑战之一。每个浏览器都有不同的方法来处理按键。

Prototype Framework 处理所有跨浏览器兼容性问题,让您免于与事件管理相关的所有麻烦。

Prototype Framework 提供 Event 命名空间,其中包含各种方法,所有方法均以当前事件对象为参数,并在所有主流浏览器中愉快地生成您请求的信息。

Event 命名空间还提供了可用于键盘相关事件的标准化键代码列表。命名空间 − 中定义了以下常量

S.No. 键常量 &描述
1.

KEY_BACKSPACE

代表退格键。

2.

KEY_TAB

代表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

代表主页键。

11.

KEY_END

代表结束键。

12.

KEY_PAGEUP

代表向上翻页键。

13.

KEY_PAGEDOWN

表示向下翻页键。

如何处理事件

在开始之前,让我们看一个使用事件方法的示例。此示例显示如何捕获发生事件的 DOM 元素。

示例

<html>
   <head>
      <title>Prototype examples</title>
      <script type = "text/javascript" src = "/javascript/prototype.js"></script>
      
      <script>
         // 注册事件"click"及相关回调。
         Event.observe(document, 'click', respondToClick);
  
         // 回调函数来处理事件。
         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事件方法

注意 − 确保您至少拥有 1.6 版的prototype.js。

S.No. 方法 &描述
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()

取消注册所有通过观察注册的事件处理程序。自动为您连接。自 1.6 版起不可用。