使用initKeyboardEvent

jas*_*328 2 html javascript javascript-events

我正在尝试找到使用initKeyboardEvent()的基本示例.理想情况下,我想创建一个键盘事件,当用户在一个输入字段中键入时按下输入按钮时,将使用jQuery显示另一个输入字段.有谁知道我在哪里可以找到使用initKeyboardEvent()的基本可理解示例?

Rob*_*obG 5

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".您可能需要测试支持以确定使用哪个.

另请注意,initKeyboardEvent将在DOM 4(草稿)中弃用,以支持Event构造函数语法,在DOM 3中建议并在DOM 4(草稿)中实现.

一个简单的功能测试可能是这样的:

// 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');
  }
}
Run Code Online (Sandbox Code Playgroud)

但暂时它可能会是最好的测试和使用DOM 2 createEventinitKeyEventinitKeyboardEvent适当.

请注意,Firefox 14似乎不支持initKeyboardEvent但支持Event构造函数和initKeyEvent,IE 9则相反,不支持initKeyEventEvent构造函数,但支持initKeyboardEvent.