[問題] 偵測鍵盤事件的問題

看板Ajax作者 (海獅)時間12年前 (2013/05/31 19:56), 編輯推噓0(008)
留言8則, 4人參與, 最新討論串1/1
網頁一直有個很煩的設定 就是不小心按到backspace會跳到上一頁 網路上找到方法可以用 preventDefault擋掉如下 e = e || window.event; if (e.keyCode == 8 || e.which == 8) { e.preventDefault(); } 但現在出一個問題就是,我一些textarea裡面也無法使用倒退健刪字了 所以想問一下,有甚麼方法偵測現在我在使用某個HTML元件 (例如textbox 或 textarea) 就不要去preventDefault 在其他地方才去阻擋他反跳上一頁呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.133.61.45 ※ 編輯: BBSealion 來自: 220.133.61.45 (05/31 19:56)

05/31 20:05, , 1F
document.activeElement 可以抓到現在 focus 的 element
05/31 20:05, 1F

05/31 20:25, , 2F
謝了! 我就是在找這個關鍵字找不到XD
05/31 20:25, 2F

05/31 20:36, , 3F
不過... 他回傳是一個class 有甚麼比較好的方法寫判斷
05/31 20:36, 3F

05/31 20:36, , 4F
式嗎?
05/31 20:36, 4F

05/31 20:37, , 5F
喔找到了 localname可以抓
05/31 20:37, 5F

05/31 20:57, , 6F
? 回傳的應該是一個 Element 你可以用 tagName
05/31 20:57, 6F

05/31 21:55, , 7F
event.target.nodeName
05/31 21:55, 7F

06/18 16:34, , 8F
建議各種瀏覽器都測試一下會比較好喔(建議)
06/18 16:34, 8F
文章代碼(AID): #1Hg8_PuD (Ajax)
文章代碼(AID): #1Hg8_PuD (Ajax)