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

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

關于<a>元素與<input>元素的JS事件運行問題

關于<a>元素與<input>元素的JS事件運行問題

手掌心 2018-11-29 22:17:18
    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');    }我正在點擊這兩個事件時,發生了不一樣的情況?。繉τ赼元素:首先運行代碼,輸出console.log('global'),之后點擊a描點元素,如圖:對于button元素:首先運行代碼,輸出console.log('global'),之后點擊btn,如圖:整體:也就是說,click事件對于兩種元素執行的方式卻不同,a元素上的click事件會把函數外的代碼在執行一次,這是為什么?!剛才有人說在他的環境里用Chrome是正常的,我把console換成了alert,還是照舊。我也是用的chrome。但是在IE上,不是這樣,運行后彈出全局的alert,點擊a標簽后,先彈出函數里,后直接跳轉頁面了,不會有chrome里的情況。這咋回事兒呢?。ň庉嬈鳎篐Builder)PS:試寫一個輪播圖例子時候,用了a元素做箭頭按鈕,直接導致我的圖片無法切換55555(相當于點擊a時候又執行了一次全局作用域里的代碼。。。。)
查看完整描述

1 回答

?
絕地無雙

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

哈哈哈,真是個有意思的問題,看了一會會才發現.
是你的 a 標簽沒有設定 href 屬性,點擊后會刷新頁面.
相當于: log global -> 點擊 log a ->刷新了又一遍 log global

第二個 global 沒有才是正常的, 你往 a 標簽里設個 href="#" 看看.

另外請下次截圖字大點....眼睛不好差點看不清.

https://img1.sycdn.imooc.com//5c2489ee0001c60e05850709.jpg

查看完整回答
反對 回復 2018-12-27
  • 1 回答
  • 0 關注
  • 655 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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