国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

事件冒泡是什么如何用jquery阻止事件冒泡_jquery

來源:懂視網 責編:小采 時間:2020-11-27 21:07:52
文檔

事件冒泡是什么如何用jquery阻止事件冒泡_jquery

事件冒泡是什么如何用jquery阻止事件冒泡_jquery:(1)什么是事件起泡 首先你要明白一點,當一個事件發生的時候,該事件總是有一個事件源,即引發這個事件的對象,一個事件不能憑空產生,這就是事件的發生。 當事件發生后,這個事件就要開始傳播。為什么要傳播呢?因為事件源本身并沒有處理事件的能力。例如
推薦度:
導讀事件冒泡是什么如何用jquery阻止事件冒泡_jquery:(1)什么是事件起泡 首先你要明白一點,當一個事件發生的時候,該事件總是有一個事件源,即引發這個事件的對象,一個事件不能憑空產生,這就是事件的發生。 當事件發生后,這個事件就要開始傳播。為什么要傳播呢?因為事件源本身并沒有處理事件的能力。例如

(1)什么是事件起泡
首先你要明白一點,當一個事件發生的時候,該事件總是有一個事件源,即引發這個事件的對象,一個事件不能憑空產生,這就是事件的發生。

當事件發生后,這個事件就要開始傳播。為什么要傳播呢?因為事件源本身并沒有處理事件的能力。例如我們點擊一個按鈕時,就會產生一個click事件,但這個按鈕本身不能處理這個事件(廢話),事件必須從這個按鈕傳播出去,從而到達能夠處理這個事件的代碼中(例如我們給按鈕的onclick屬性賦一個函數的名字,就是讓這個函數去處理該按鈕的click事件)。

當事件在傳播過程中,找到了一個能夠處理它的函數,這時候我們就說這個函數捕捉到了這個事件。

說到這里,關鍵的問題來了,那就是一個函數是如何捕捉一個事件的呢?這就涉及到事件的冒泡了。

為了更好地理解冒泡的概念,我建議你現在想象一下你的面前放著一杯水,但這杯水和我們平時看到的有點點不同,它分為數層,每一層又分成一或多個區域,最頂層是我們熟悉的窗口對象(即window對象),下一層分為好幾個區域(document對象、history對象等等),而document對象的下一層又分為多個子對象。

這些對象的層次關系構成了DOM中的對象樹。
事件的傳播是有方向的,當點擊一個按鈕時所產生的事件從這個按鈕處開始向上傳播(就像一個水泡從杯底冒上來,這就是之所以叫事件冒泡的原因),但這個事件總是尋找特定的屬性是否有值。例如按鈕的click事件先尋找在按鈕上是否有onclick屬性的有意義的定義(即該屬性指向一個存在的函數或一段可執行的語句),如果有,執行這個函數或語句;然后事件繼續向上傳播,到達按鈕的上一層對象(例如一個form對象或document對象,總之是包含了按鈕的父對象),如果該對象也定義了onclick屬性,則執行屬性的值。

所以,如果這個按鈕上面有3層(form、document、window),且這三層都定義了onclick屬性,則當按鈕的click事件產生時,將會調用4個(包括按鈕本身的一個)函數或執行4段語句。
事件的這幾個特性在0級dom中也是適用的。

(2)jquery阻止事件起泡實例
1、通過返回false來取消默認的行為并阻止事件起泡。
jQuery 代碼:
代碼如下:
$("form").bind(
  "submit",
  function() {
    return false;
   }
);

2、通過使用 preventDefault() 方法只取消默認的行為。
jQuery 代碼:
代碼如下:
$("form").bind(
  "submit",
  function(event){
    event.preventDefault();
  }
);

3、通過使用 stopPropagation() 方法只阻止一個事件起泡。
jQuery 代碼:
代碼如下:
$("form").bind(
  "submit",
  function(event){
    event.stopPropagation();
  }
);

(3)關于js事件起泡的驗證
今天這個問題主要涉及到幾個關鍵詞:對象,觸發事件,捕獲事件,執行處理、起泡。這其實就是整個js執行的過程。其中冒泡這個過程很有意思。其實就像是一杯水,但是這杯水是分層次的,最底下是當前觸發事件的對象。然后越往上范圍越大,最頂層肯定是window,倒數第二層是document。氣泡在上浮過程中會判斷當前所到達的層有沒有綁定事件處理方法。有話就執行相應的處理。沒有的話就繼續起泡。直到到達最頂層的window窗口層。我們可以在任何一層做相應的處理以阻止事件繼續起泡。方法就是調用事件對象的阻止起泡的方法。event.stopPropagation();下面是寫的一個驗證js事件起泡的過程方法。
代碼如下:

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

事件冒泡是什么如何用jquery阻止事件冒泡_jquery

事件冒泡是什么如何用jquery阻止事件冒泡_jquery:(1)什么是事件起泡 首先你要明白一點,當一個事件發生的時候,該事件總是有一個事件源,即引發這個事件的對象,一個事件不能憑空產生,這就是事件的發生。 當事件發生后,這個事件就要開始傳播。為什么要傳播呢?因為事件源本身并沒有處理事件的能力。例如
推薦度:
標簽: 事件 什么是 jQuery
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 一边摸一边叫床一边爽 | 亚洲国产一区二区三区在线观看 | 黄色毛片在线观看 | 一级一级一级毛片 | 欧美成人精品一区二区三区 | 纯毛片 | 一级一级一级毛片免费毛片 | 欧洲97色综合成人网 | 欧美一区二区三区不卡免费 | 无遮挡免费看 | 国产激情视频一区二区三区 | 亚洲国产精品婷婷久久久久 | 亚洲精品视频区 | 国产在线91区精品 | 国产亚洲精品sese在线播放 | 亚洲精品在线视频 | 99精品国产高清一区二区三区香蕉 | 国产成人一区二区三区 | 激性欧美激情在线aa | 亚洲欧美韩日 | 国产成人一区二区三区在线播放 | 国产日韩欧美精品一区二区三区 | 久久91精品国产91久久 | 国产成人精品久久亚洲高清不卡 | 国内精品久久久久久久久 | 亚洲激情在线观看 | 亚洲午夜在线视频 | 国产在线播放网站 | 国产精品久久久久久久久99热 | 久草福利社 | 成人精品视频一区二区三区 | 国产精品日本一区二区不卡视频 | 亚洲伊人色 | 国产高清一区二区三区视频 | 亚洲精品高清国产一久久 | 国精品日韩欧美一区二区三区 | 欧美日韩综合精品一区二区三区 | 国产成人精品一区二区免费 | 欧美亚洲电影 | 北条麻妃在线播放 | 亚洲最新在线 |