javascript - 關(guān)于<a>元素與<input>元素的JS事件運(yùn)行問(wèn)題
問(wèn)題描述
window.onload = function () {var a = document.getElementById('a');var btn = document.getElementById('btn');function aFn () { console.log('aFn');}function btnFn () { console.log(’btnFn’);}a.onclick = function () { aFn();}btn.onclick = function() { btnFn();}console.log(’global’); }我正在點(diǎn)擊這兩個(gè)事件時(shí),發(fā)生了不一樣的情況!?對(duì)于a元素:首先運(yùn)行代碼,輸出console.log(’global’),之后點(diǎn)擊a描點(diǎn)元素,如圖:對(duì)于button元素:首先運(yùn)行代碼,輸出console.log(’global’),之后點(diǎn)擊btn,如圖:
整體:
剛才有人說(shuō)在他的環(huán)境里用Chrome是正常的,我把console換成了alert,還是照舊。我也是用的chrome。但是在IE上,不是這樣,運(yùn)行后彈出全局的alert,點(diǎn)擊a標(biāo)簽后,先彈出函數(shù)里,后直接跳轉(zhuǎn)頁(yè)面了,不會(huì)有chrome里的情況。這咋回事兒呢!(編輯器:HBuilder)
PS:試寫一個(gè)輪播圖例子時(shí)候,用了a元素做箭頭按鈕,直接導(dǎo)致我的圖片無(wú)法切換55555(相當(dāng)于點(diǎn)擊a時(shí)候又執(zhí)行了一次全局作用域里的代碼。。。。)
問(wèn)題解答
回答1:哈哈哈,真是個(gè)有意思的問(wèn)題,看了一會(huì)會(huì)才發(fā)現(xiàn).是你的 a 標(biāo)簽沒(méi)有設(shè)定 href 屬性,點(diǎn)擊后會(huì)刷新頁(yè)面.相當(dāng)于: log global -> 點(diǎn)擊 log a ->刷新了又一遍 log global
第二個(gè) global 沒(méi)有才是正常的, 你往 a 標(biāo)簽里設(shè)個(gè) href='http://www.aoyou183.cn/wenda/4968.html#' 看看.
另外請(qǐng)下次截圖字大點(diǎn)....眼睛不好差點(diǎn)看不清.
在a標(biāo)簽事件綁定函數(shù)里寫上event.preventDefault();
相關(guān)文章:
1. javascript - webpack1和webpack2有什么區(qū)別?2. Python2中code.co_kwonlyargcount的等效寫法3. django - Python error: [Errno 99] Cannot assign requested address4. 求救一下,用新版的phpstudy,數(shù)據(jù)庫(kù)過(guò)段時(shí)間會(huì)消失是什么情況?5. python小白 關(guān)于類里面的方法獲取變量失敗的問(wèn)題6. javascript - vscode alt+shift+f 格式化js代碼,通不過(guò)eslint的代碼風(fēng)格檢查怎么辦。。。7. java - 線上應(yīng)用,如果數(shù)據(jù)庫(kù)操作失敗的話應(yīng)該如何處理?8. python小白,關(guān)于函數(shù)問(wèn)題9. [python2]local variable referenced before assignment問(wèn)題10. python - vscode 如何在控制臺(tái)輸入
