JS事件

1: DOM0 事件和DOM2級在事件監(jiān)聽使用方式上有什么區(qū)別?

  • DOM0級事件監(jiān)聽就是把一個方法賦值給一個元素的事件處理程序?qū)傩浴⑦@些屬性的值設(shè)置為一個函數(shù),就可以指定事件處理程序穿剖。一個事件只能綁定一次,并且新方法會覆蓋老方法卦溢。例如btn.onclick=function(){}
  • DOM2級事件監(jiān)聽定義了兩個方法用于處理指定和刪除事件處理程序的操作:addEventListener糊余、removeEventListener。所有的DOM節(jié)點都包含這兩個方法单寂,并且它們都接受三個參數(shù):事件類型贬芥、事件處理方法、布爾參數(shù)宣决。例如addEventListener蘸劈、removeEventListener∽鸱校可以選擇按照冒泡的順序處理還是捕獲的順序處理威沫。

2: attachEvent與addEventListener的區(qū)別?

  • 參數(shù)個數(shù)不相同洼专,addEventListener有三個參數(shù)棒掠,attachEvent只有兩個,attachEvent添加的事件處理程序只能發(fā)生在冒泡階段,addEventListener第三個參數(shù)可以決定添加的事件處理程序是在捕獲階段還是冒泡階段處理(我們一般為了瀏覽器兼容性都設(shè)置為冒泡階段)
  • 第一個參數(shù)意義不同屁商,addEventListener第一個參數(shù)是事件類型(比如click烟很,load),而attachEvent第一個參數(shù)指明的是事件處理函數(shù)名稱(onclick,onload)
  • 事件處理程序的作用域不相同雾袱,addEventListener的作用域是元素本身恤筛,this是指的觸發(fā)元素,而attachEvent事件處理程序會在全局變量內(nèi)運行谜酒,this是window,所以會返回undefined妻枕,而不是元素id僻族。
  • 為一個事件添加多個事件處理程序時,執(zhí)行的順序不同屡谐。 addEventListener 會按照添加的順序執(zhí)行述么。 attachEvent 添加多個事件處理程序時,順序是無規(guī)律的

3: 解釋IE事件冒泡和DOM2事件傳播機制愕掏?

IE的事件冒泡:事件開始時由最具體的元素接收度秘,然后逐級向上傳播到較為不具體的元素

事件冒泡模型

DOM事件流:DOM2級事件規(guī)定事件流包括三個階段,事件捕獲階段饵撑,處于目標(biāo)階段剑梳,事件冒泡階段,首先發(fā)生的是事件捕獲滑潘,為截取事件提供機會垢乙,然后是實際目標(biāo)接收事件,最后是冒泡階段

DOM2事件傳播機制

4:如何阻止事件冒泡语卤? 如何阻止默認(rèn)事件追逮?

DOM瀏覽器
阻止冒泡e.stopPropagation()
阻止默認(rèn)事件event.preventDefault()
IE瀏覽器
阻止冒泡e.cancelBubble = true;
阻止默認(rèn)事件event.returnValue = false;

5:有如下代碼,要求當(dāng)點擊每一個元素li時控制臺展示該元素的文本內(nèi)容粹舵。不考慮兼容

<ul class="ct">
    <li>這里是</li>
    <li>英雄聯(lián)盟</li>
    <li>敵軍三十秒后到達戰(zhàn)場</li>
</ul>
<script>
//todo ...
</script>
  <script>
    var lists=$(".ct");
    lists.addEventListener("click",function(e){
        console.log(e.target.innerText);
    });
    
    function $(id){
      return document.querySelector(id);
    }
  </script>

6: 補全代碼钮孵,要求:

  • 當(dāng)點擊按鈕開頭添加時在<li>這里是</li>元素前添加一個新元素,內(nèi)容為用戶輸入的非空字符串眼滤;當(dāng)點擊結(jié)尾添加時在最后一個 li 元素后添加用戶輸入的非空字符串.
  • 當(dāng)點擊每一個元素li時控制臺展示該元素的文本內(nèi)容巴席。
<ul class="ct">
    <li>這里是</li>
    <li>英雄聯(lián)盟</li>
    <li>全軍出擊</li>
</ul>
<input class="ipt-add-content" placeholder="添加內(nèi)容"/>
<button id="btn-add-start">開頭添加</button>
<button id="btn-add-end">結(jié)尾添加</button>
<script>
//你的代碼
</script>

7: 補全代碼,要求:當(dāng)鼠標(biāo)放置在li元素上诅需,會在img-preview里展示當(dāng)前l(fā)i元素的data-img對應(yīng)的圖片情妖。

<ul class="ct">
    <li data-img="1.png">鼠標(biāo)放置查看圖片1</li>
    <li data-img="2.png">鼠標(biāo)放置查看圖片2</li>
    <li data-img="3.png">鼠標(biāo)放置查看圖片3</li>
</ul>
<div class="img-preview"></div>
<script>
//你的代碼
</script>
<ul class="ct">
  <li data-img="http://cdn.jirengu.com/book.jirengu.com/img/11.jpg">鼠標(biāo)放置查看圖片1</li>
  <li data-img="http://cdn.jirengu.com/book.jirengu.com/img/13.jpg">鼠標(biāo)放置查看圖片2</li>
  <li data-img="http://cdn.jirengu.com/book.jirengu.com/img/14.jpg">鼠標(biāo)放置查看圖片3</li>
</ul>
<div class="img-preview"></div>
<script>
  function $(id){
    return document.querySelector(id);
  }
  var lists=$(".ct");
  var show=$(".img-preview");
  var img=document.createElement("img");
  show.appendChild(img);  
  lists.addEventListener("mouseover",function(e){
    var dataImg=e.target.getAttribute("data-img");
    img.setAttribute("src",dataImg);
  });
</script>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市诱担,隨后出現(xiàn)的幾起案子毡证,更是在濱河造成了極大的恐慌,老刑警劉巖蔫仙,帶你破解...
    沈念sama閱讀 216,919評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件料睛,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機恤煞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評論 3 392
  • 文/潘曉璐 我一進店門屎勘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人居扒,你說我怎么就攤上這事概漱。” “怎么了喜喂?”我有些...
    開封第一講書人閱讀 163,316評論 0 353
  • 文/不壞的土叔 我叫張陵瓤摧,是天一觀的道長。 經(jīng)常有香客問我玉吁,道長照弥,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,294評論 1 292
  • 正文 為了忘掉前任进副,我火速辦了婚禮这揣,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘影斑。我一直安慰自己给赞,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,318評論 6 390
  • 文/花漫 我一把揭開白布矫户。 她就那樣靜靜地躺著塞俱,像睡著了一般。 火紅的嫁衣襯著肌膚如雪吏垮。 梳的紋絲不亂的頭發(fā)上障涯,一...
    開封第一講書人閱讀 51,245評論 1 299
  • 那天,我揣著相機與錄音膳汪,去河邊找鬼唯蝶。 笑死,一個胖子當(dāng)著我的面吹牛遗嗽,可吹牛的內(nèi)容都是我干的粘我。 我是一名探鬼主播蔫缸,決...
    沈念sama閱讀 40,120評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼佃声,長吁一口氣:“原來是場噩夢啊……” “哼布近!你這毒婦竟也來了证九?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,964評論 0 275
  • 序言:老撾萬榮一對情侶失蹤颈嚼,失蹤者是張志新(化名)和其女友劉穎翔悠,沒想到半個月后番宁,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體冯痢,經(jīng)...
    沈念sama閱讀 45,376評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡氮昧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,592評論 2 333
  • 正文 我和宋清朗相戀三年框杜,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片袖肥。...
    茶點故事閱讀 39,764評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡咪辱,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出椎组,到底是詐尸還是另有隱情油狂,我是刑警寧澤,帶...
    沈念sama閱讀 35,460評論 5 344
  • 正文 年R本政府宣布寸癌,位于F島的核電站专筷,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏灵份。R本人自食惡果不足惜仁堪,卻給世界環(huán)境...
    茶點故事閱讀 41,070評論 3 327
  • 文/蒙蒙 一哮洽、第九天 我趴在偏房一處隱蔽的房頂上張望填渠。 院中可真熱鬧,春花似錦鸟辅、人聲如沸氛什。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,697評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽枪眉。三九已至,卻和暖如春再层,著一層夾襖步出監(jiān)牢的瞬間贸铜,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,846評論 1 269
  • 我被黑心中介騙來泰國打工聂受, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留蒿秦,地道東北人。 一個月前我還...
    沈念sama閱讀 47,819評論 2 370
  • 正文 我出身青樓蛋济,卻偏偏與公主長得像棍鳖,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子碗旅,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,665評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 一渡处、DOM0 事件和DOM2級在事件監(jiān)聽使用方式上有什么區(qū)別? DOM0級事件 了解DOM0級事件之前祟辟,先了解下H...
    任少鵬閱讀 250評論 0 1
  • 饑人谷事件課件 1.DOM0 事件和DOM2級在事件監(jiān)聽使用方式上有什么區(qū)別医瘫? DOM0事件有兩種:一是在標(biāo)簽內(nèi)寫...
    饑人谷_米彌輪閱讀 262評論 0 0
  • 1:DOM0事件和DOM2級在事件監(jiān)聽使用方式上有什么區(qū)別? 瀏覽器端的JavaScript采用的是事件驅(qū)動的異步...
    饑人谷_bigJiao閱讀 280評論 0 0
  • 關(guān)鍵詞:事件 1. DOM0事件和DOM2級在事件監(jiān)聽使用方式上有何區(qū)別旧困? 事件處理程序(事件監(jiān)聽器)有以下幾種:...
    NathanYangcn閱讀 235評論 0 1
  • 題目1: DOM0 事件和DOM2級在事件監(jiān)聽使用方式上有什么區(qū)別登下? DOM0級事件處理方式:通過JavaScri...
    輝夜乀閱讀 287評論 0 0