亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在線等,挺急的!js switch case 語句中 事件重復調用十分感謝

在線等,挺急的!js switch case 語句中 事件重復調用十分感謝

慕森王 2019-10-18 09:00:01
for(vari;i
查看完整描述

2 回答

?
慕虎7371278

TA貢獻1802條經驗 獲得超4個贊

這種情況我一般會這么寫
functiononImport(){}
functiononSave(){}
constactions={
//如果有參數自己擴展
"import":()=>onImport(),
"save":()=>onSave()
};
for(leti=0;i<10;i++){
consthandler=actions[type(i)];
if(handler){
$(id[i]).bind(handler);
}
}
至于你的問題,這個代碼不能復現,我懷疑是在別的地方調用了多次綁事件的處理。
                            
查看完整回答
反對 回復 2019-10-18
?
慕沐林林

TA貢獻2016條經驗 獲得超9個贊

首先,這個問題應該不是javascript語言的特性問題,屬于程序邏輯的問題。
其次,你的代碼,有錯誤,在for里面vari應該還要給i初始化賦值,也即for(vari=0;i<10;i++)
然后,我模擬了你的代碼,沒有重現你的問題,是不是你的type(i)取到的值都是一樣的?這是我模擬的代碼
TEST
crossorigin="anonymous">
btn0
btn1
btn2
for(vari=0;i<3;i++){
switch(i){
case0:
$('#btn'+i).bind('click',function(event){
console.log($(this).text());
});
break;
case1:
$('#btn'+i).bind('click',function(event){
console.log($(this).text());
});
break;
case2:
$('#btn'+i).bind('click',function(event){
console.log($(this).text());
});
break;
default:
break;
}
}
                            
查看完整回答
反對 回復 2019-10-18
  • 2 回答
  • 0 關注
  • 289 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號