當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Prototype Event stop()用法及代碼示例


此方法會停止事件的傳播並防止其默認操作最終被觸發。

您的瀏覽器在啟動事件後如何處理事件有兩個方麵 -

  • 瀏覽器通常在發生事件的實際元素上觸發事件處理程序,然後在其父元素上,依此類推,直到到達 document.s 根元素。這稱為事件冒泡,是最常見的事件傳播形式。當您剛剛處理一個事件時,您可能很想停止這種傳播,並且不希望它繼續冒泡(或認為不需要它)。

  • 一旦您的代碼有機會處理該事件,瀏覽器也會處理它,如果該事件具有默認行為。例如,點擊鏈接導航到它們;提交表單將它們發送到服務器端;在單行表單字段中點擊 Return 鍵會提交它,等等。如果您自己處理,您可能很想防止這種默認行為。

因為停止這些方麵之一意味著,在 99.9% 的情況下,也阻止另一個方麵,Prototype 在這個停止函數中捆綁了這兩個方麵。在事件對象上調用它會停止傳播並阻止默認行為。

用法

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 stop() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。