
- Prototype 教程
- Prototype - 首頁
- Prototype - 簡短概覽
- Prototype - 有用功能
- Prototype - 實用方法
- Prototype - 元素物件
- Prototype - 數值處理
- Prototype - 字串處理
- Prototype - 陣列處理
- Prototype - 雜湊處理
- Prototype - 基本物件
- Prototype - 模板
- Prototype - 列舉
- Prototype - 事件處理
- Prototype - 表單管理
- Prototype - JSON 支援
- Prototype - AJAX 支援
- Prototype - 表達範圍
- Prototype - 定期執行
- Prototype 有用資源
- Prototype - 快速指南
- Prototype - 有用資源
- Prototype - 討論
原型 - 事件 stop() 方法
此方法停止事件傳播,並最終阻止觸發其預設操作。
在瀏覽器引發事件後,它處理事件的方式有兩個方面:
瀏覽器通常在實際發生事件的元素上觸發事件處理程式,然後在其父元素上觸發,以此類推,直到到達 document.s 根元素。這稱為事件冒泡,是事件傳播最常見的形式。在剛剛處理完一個事件並且不希望它繼續冒泡(或認為沒有必要)時,你很有可能希望停止這種傳播。
一旦你的程式碼有機會處理事件,如果該事件有預設行為,瀏覽器也會處理它。例如,單擊連結會導航到它們;提交表單會將它們傳送到服務端;在單行表單欄位中按 Return 鍵會提交它,等等。如果你自己進行處理,則很有可能希望阻止此預設行為。
因為在 99.9% 的情況下,停止其中一個方面意味著阻止另一個方面,所以 Prototype 在此 stop 函式中將兩者捆綁在一起。在事件物件上呼叫它會停止傳播並阻止預設行為。
語法
Event.stop(event);
返回值
不可用。
示例
下面是一個程式碼片段,如果某個欄位為空,則會阻止將表單傳送到服務端。
Event.observe('signinForm', 'submit', function(event) { var login = $F('login').strip(); if ('' == login) { Event.stop(event); // Display the issue one way or another } });
prototype_event_handling.htm
廣告