使用Javascript检测操作系统的可靠方法是什么?

时间:2015-11-10 00:24:21

标签: javascript navigator key-events

根据MDN,不建议使用navigator.userAgent。在我的应用程序中,我想要一个del键的快捷方式。

在mac del key(退格)中,charCode = 8。 在windows del key中charCode = 46。

我想同时处理两个keyEvents。我目前正在使用userAgent,但它不可靠,因为该属性可能是欺骗性的。我想知道什么是了解客户端操作系统的最佳方式。

更多已弃用的导航器属性 navigator.appVersion navigator.platform

/* code objective */
if ((keycode == 8 && os == 'macintosh') || keycode == 46) {
    //This is keyboard shortcut to perform delete
}

1 个答案:

答案 0 :(得分:1)

依靠KeyboardEvent.metaKey和KeyboardEvent.Backspace解决了我的问题

完整键值 - https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values

有关详细信息,请参阅:https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key#Key_values

感谢@ Teoli2003的Twitter回复 - https://twitter.com/Teoli2003/status/663995373766221824