我试图找到使用initKeyboardEvent()的基本示例。理想情况下,我想创建一个键盘事件,在该事件中,当用户在一个输入字段中键入内容时,按下输入按钮时,将使用jQuery显示另一个输入字段。有谁知道在哪里可以找到使用initKeyboardEvent()的基本示例?
最佳答案
initKeyboardEvent最初是initKeyEvent,在MDN上有一个有效的示例:https://developer.mozilla.org/en-US/docs/DOM/event.initKeyEvent和此处:http://www.howtocreate.co.uk/tutorials/javascript/domevents。
我相信您可以通过网络搜索找到许多示例:“javascript initkeyevent”和“javascript initKeyboardEvent”。您可能需要测试支持才能确定使用哪个。
还要注意的是,DOM 4 (draft)中不赞成使用initKeyboardEvent,而建议使用DOM 3中建议的事件构造函数语法,并在DOM 4 (draft)中实现。
一个简单的功能测试可能类似于:
// Test for Event constructor
if (typeof Event != 'undefined') {
var x, evt;
try {
x = new Event('keyboardEvent');
} catch(e) {
x = void 0;
}
}
// test to see which method to use
if (typeof x != 'undefined') {
alert('Use Event constructor');
} else if (document.createEvent) {
evt = document.createEvent('KeyboardEvent');
if (evt && evt.initKeyboardEvent) {
alert('Use initKeyboardEvent');
} else if (evt && evt.initKeyEvent) {
alert('Use initKeyEvent');
}
}
但是暂时最好是适当地使用initKeyEvent或initKeyboardEvent测试并使用DOM 2 createEvent。
请注意,Firefox 14似乎不支持initKeyboardEvent,但确实支持Event构造函数和initKeyEvent,IE 9相反,不支持initKeyEvent或Event构造函数,但确实支持initKeyboardEvent。