2015-10-16 109 views
0

當文本輸入具有焦點並按下回車鍵時,document.activeElement.nodeName應返回INPUT。這適用於Chrome,Firefox和Safari,但在Internet Explorer/Edge中它返回BUTTONInternet Explorer中來自activeElement的錯誤nodeName

我正在使用繁重的JavaScript自定義窗體,Internet Explorer報告了錯誤的nodeName,這導致了一個很大的問題。

See this fiddle for the example.

這是一個已知的問題?有沒有解決方法或修復?

+0

嘗試使用'tagName'。 –

回答

0

如果將方法更改爲輸出outerHTML,則可以看到文本輸入在Chrome中有焦點,但提交輸入在IE中具有焦點。

綁定事件​​,而不是keyup或改變從submit第二inputbutton似乎工作。在表單中按enter應該會激活第一個輸入,並且我猜其中一個IE在處理此事時會執行的操作是將焦點集中到submit輸入。

​​可能工作原因是該事件在IE激活submit按鈕之前引發。

+0

更改爲keydown作品。謝謝! –