第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

為div添加事件,不會產(chǎn)生事件冒泡而是彈出兩個(gè)相同showmes,這是為什么呢?對著視頻老師講解敲了好幾回都是這樣?拜托哪位大神幫忙解下疑惑,謝謝!

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>無標(biāo)題文檔</title>
</head>

</head>
<body>
? <div id="box">
??? <input type="button" value="按鈕3" id="btn3" />
??? <a href="聯(lián)系.html" id="go">跳轉(zhuǎn)</a>
? </div>
<script type="text/javascript">
var eventUtil={
??? addHandler:function(element,type,handler){
??????? if(element.addEventListener){
??????????? element.addEventListener(type,showmes,false);
??????? }else if(element.attachEvent){
??????????? element.attachEvent('on'+type,showmes);
??????? }else{
??????????? element['on'+type]=showmes;
??????? }
??? },
???? removeHandler:function(element,type,handler){
??????? if(element.removeEventListener){
??????????? element.removeEventListener(type,showmes,false);
??????? }else if(element.detachEvent){
??????????? element.detachEvent('on'+type,showmes);
??????? }else{
??????????? element['on'+type]=null;
??????? }
??? },
}

function showmes(){
??? alert('hello world');
}

function showbox(){
??? alert('這是放按鈕的BOX');
}

function stopgoto(){
??? alert('');
}

var btn3=document.getElementById('btn3');
var box=document.getElementById('box');
var go=document.getElementById('go');

eventUtil.addHandler(btn3,'click',showmes);
eventUtil.addHandler(box,'click',showbox);


</script>
</body>
</html>

正在回答

3 回答

錯(cuò)誤:你addHandler里面所有的handler都用的showmes,所以不管綁定什么函數(shù),都是showme。

解決辦法:把a(bǔ)ddHandler中所有showmes改為handler。removeHandler中亦是如此。

0 回復(fù) 有任何疑惑可以回復(fù)我~

<!DOCTYPE HTML>
<html>
<head>
? ?<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
? ?<title>無標(biāo)題文檔</title>
</head>
<body>
<div id="box">
? ?<input type="button" value="按鈕3" id="btn3" />
? ?<a href="聯(lián)系.html" id="go">跳轉(zhuǎn)</a>
</div>
<script type="text/javascript">
? ?var eventUtil={
? ? ? ?addHandler:function(element,type,handler){
? ? ? ? ? ?if(element.addEventListener){
? ? ? ? ? ? ? ?element.addEventListener(type,handler,false);
? ? ? ? ? ?}else if(element.attachEvent){
? ? ? ? ? ? ? ?element.attachEvent('on'+type,handler);
? ? ? ? ? ?}else{
? ? ? ? ? ? ? ?element['on'+type]=handler;
? ? ? ? ? ?}
? ? ? ?},
? ? ? ?removeHandler:function(element,type,handler){
? ? ? ? ? ?if(element.removeEventListener){
? ? ? ? ? ? ? ?element.removeEventListener(type,handler,false);
? ? ? ? ? ?}else if(element.detachEvent){
? ? ? ? ? ? ? ?element.detachEvent('on'+type,handler);
? ? ? ? ? ?}else{
? ? ? ? ? ? ? ?element['on'+type]=null;
? ? ? ? ? ?}
? ? ? ?},
? ?}

? ?function showmes(){
? ? ? ?alert('hello world');
? ?}

? ?function showbox(){
? ? ? ?alert('這是放按鈕的BOX');
? ?}

? ?function stopgoto(event){
? ? ? event.stopPropagation();
? ? ? ?event.preventDefault();
? ?}

? ?var btn3=document.getElementById('btn3');
? ?var box=document.getElementById('box');
? ?var go=document.getElementById('go');

? ?eventUtil.addHandler(btn3,'click',showmes);
? ?eventUtil.addHandler(box,'click',showbox);
? ?eventUtil.addHandler(go,'click',stopgoto);


</script>
</body>
</html>

試一下吧!

0 回復(fù) 有任何疑惑可以回復(fù)我~
var?eventUtil={
????addHandler:function(element,type,handler){??//這里參數(shù)是handler
????????if(element.addEventListener){
????????????element.addEventListener(type,showmes,false);??//錯(cuò)誤,將showmes改成handler
????????}else?if(element.attachEvent){
????????????element.attachEvent('on'+type,showmes);??//錯(cuò)誤
????????}else{
????????????element['on'+type]=showmes;??//錯(cuò)誤
????????}
????}


0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消
DOM事件探秘
  • 參與學(xué)習(xí)       99532    人
  • 解答問題       1291    個(gè)

DOM事件?本課程會通過實(shí)例來給小伙伴們講解如何使用這些事件

進(jìn)入課程

為div添加事件,不會產(chǎn)生事件冒泡而是彈出兩個(gè)相同showmes,這是為什么呢?對著視頻老師講解敲了好幾回都是這樣?拜托哪位大神幫忙解下疑惑,謝謝!

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號