課程
/前端開發
/JavaScript
/DOM事件探秘
這兩個是不是同一個意思?定義了函數addHandler()
2016-01-23
源自:DOM事件探秘 2-4
正在回答
可能我沒有寫的全,有些人也沒有看到過。視頻——DOM事件探秘(2-4 IE事件處理程序及跨瀏覽器解決)
<!DOCTYPE html>
<html>
<head>
? ? <meta charset="UTF-8">
? ? <title>事件流</title>
</head>
<body>
? ? <form>
? ? ? ? <input type="button" value="按鈕" id="btn" onclick="showMessage()">
? ? ? ? <input type="button" value="按鈕2" id="btn2">
? ? ? ? <input type="button" value="按鈕3" id="btn3">
? ? </form>
<script>
? ? function showMessage(){
alert("hello world!");
}
var btn2=document.getElementById("btn2");
var btn3=document.getElementById("btn3");
/* btn2.onclick=function(){
btn2.onclick=null;
//btn3.addEventListener("click",showMessage,false);
//btn3.removeEventListener("click",showMessage,false);
btn3.attachEvent("onclick",showMessage);
btn3.detachEvent("onclick",showMessage); ?*/
//跨瀏覽器事件處理程序
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){
element.removeEventListener(type,handler,false);
element.detachEvent('on'+type,handler);
element['on'+type]=null;
eventutil.addHandler(btn3,"click",showMessage);
eventutil.removeHandler(btn3,"click",showMessage);
? ? </script>
</body>
</html>
以上加粗的部分代碼,還有“刪除句柄”上面的逗號“,”也有點不理解。
鱸先森
liulin60 回復 鱸先森
這個addHandler:function(){}是什么? ??
沒見過這種形式,剛試了試,編譯不通過,說是有“無意的)”。JavaScript函數兩種形式
????????1.function add(){} ? ? 函數定義
????????2.var ?add = function(){} ? 函書表達式
前面帶冒號,不知道是我孤陋寡聞,還是樓主打錯了,如果是前者,在此請教。
個人理解是不一樣。。我認為第一個是函數表達式,第二個是函數聲明。
舉報
DOM事件?本課程會通過實例來給小伙伴們講解如何使用這些事件
2 回答addHandler:function(ement,type,handler){}等同于 function addHandler(ement,type,handler){}嗎?
2 回答addHandler和removeHandler
5 回答function(element,type,handler)里面的handler是什么意思
1 回答這個是什么意思?
1 回答這個“?” 是什么意思呀
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-01-24
可能我沒有寫的全,有些人也沒有看到過。視頻——DOM事件探秘(2-4 IE事件處理程序及跨瀏覽器解決)
<!DOCTYPE html>
<html>
<head>
? ? <meta charset="UTF-8">
? ? <title>事件流</title>
</head>
<body>
? ? <form>
? ? ? ? <input type="button" value="按鈕" id="btn" onclick="showMessage()">
? ? ? ? <input type="button" value="按鈕2" id="btn2">
? ? ? ? <input type="button" value="按鈕3" id="btn3">
? ? </form>
<script>
? ? function showMessage(){
alert("hello world!");
}
var btn2=document.getElementById("btn2");
var btn3=document.getElementById("btn3");
/* btn2.onclick=function(){
alert("hello world!");
}
btn2.onclick=null;
//btn3.addEventListener("click",showMessage,false);
//btn3.removeEventListener("click",showMessage,false);
btn3.attachEvent("onclick",showMessage);
btn3.detachEvent("onclick",showMessage); ?*/
//跨瀏覽器事件處理程序
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.addEventListener){
element.removeEventListener(type,handler,false);
}
else if(element.attachEvent){
element.detachEvent('on'+type,handler);
}
else{
element['on'+type]=null;
}
}
}
eventutil.addHandler(btn3,"click",showMessage);
eventutil.removeHandler(btn3,"click",showMessage);
? ? </script>
</body>
</html>
2016-01-23
這個addHandler:function(){}是什么? ??
沒見過這種形式,剛試了試,編譯不通過,說是有“無意的)”。JavaScript函數兩種形式
????????1.function add(){} ? ? 函數定義
????????2.var ?add = function(){} ? 函書表達式
前面帶冒號,不知道是我孤陋寡聞,還是樓主打錯了,如果是前者,在此請教。
2016-01-23
個人理解是不一樣。。我認為第一個是函數表達式,第二個是函數聲明。