.onclick 跟 .addEventListener 的差異在哪裡呢?
.onclick跟.addEventListener的差異
請看以下範例說明
html:
現在有兩個按鈕,分別會示範使用.onclick和.addEventListener來綁定事件
1 | <input type="button" class="btnOn" value="on點擊"> |

用.onclick綁定事件
html:
1 | <input type="button" class="btnOn" value="on點擊"> |
JS:
🎃 建立變數elOn,並選取.btnOn
🎃 用.onclick綁定事件
1 | var elOn = document.querySelector('.btnOn'); |
點擊「on點擊」,確實會跳出 alert

.onclick「不能同時」綁定多個事件
當我想要「連續綁定兩個事件」
JS:
1 | // 用.onclick綁定事件 |
😢 點擊「on點擊」按鈕會發現,只會出現「on-2」的 alert,但我明明就綁定了兩個.onclick事件呀

原因為:
這是.onclick的侷限–>
🎃 當我針對同一個元素,同時綁定了很多個.onclick事件,.onclick永遠都只會讀取「最後一個事件」,前面的事件都會「被覆蓋掉」
✅ 為了解決.onclick的侷限,就有了一個更好的作法「.addEventListener」
用.addEventListener綁定事件
html:
1 | <input type="button" class="btnAdd" value="add點擊"> |
JS:
🎃 用.addEventListener連續綁定兩個事件
1 | // 用.addEventListener綁定事件 |
✅ 就會接續跳出「第一個 alert」和「第二個 alert」了

