Prototype - Event stopObserving() 方法
此方法取消注册事件处理程序。
此函数的调用参数语义与观察完全相同。它取消注册事件处理程序,因此不再为该元素+事件对调用该处理程序。
语法
Event.stopObserving(element, eventName, handler[, useCapture = false])
以下是有关传递的参数的说明 −
element − 您要观察的 DOM 元素;与 Prototype 中一样,这可以是实际的 DOM 引用,也可以是元素的 ID 字符串。
evenetName − 根据您的浏览器支持的 DOM 级别,标准化事件名称。这包括单击、鼠标按下、鼠标弹起、鼠标悬停、鼠标移动和鼠标移出。
handler − 这是事件处理程序函数。这可以是您即时创建的匿名函数。
useCapture − 您也可以选择请求捕获而不是冒泡。详细信息请参阅 https://www.w3.org/TR/DOM-Level-2-Events/events.html。
返回值
NA。
示例
此示例显示了它仅在单击后才做出反应,之后程序停止观察。
<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) {
alert("Left button is pressed...." );
Event.stopObserving(document, 'click', respondToClick);
}
</script>
</head>
<body>
<p id = "note">Click anywhere to see the result.</p>
<p id = "para1">This is paragraph 1</p>
<p id = "para2">This is paragraph 2</p>
<div id = "division">This is divsion.</div>
</body>
</html>

prototype_event_handling.html