KeyboardEvent.initKeyEvent()

警告: 不要再使用这个方法,而是使用 KeyboardEvent() 构造函数。

该方法已从 DOM 规范中删除,并且不受任何现代浏览器支持。Firefox 从版本 93 开始默认通过首选项(dom.keyboardevent.init_key_event.enabled)隐藏此方法,并计划很快移除它。

已弃用: 不再推荐使用该特性。虽然一些浏览器仍然支持它,但也许已从相关的 web 标准中移除,也许正准备移除或出于兼容性而保留。请尽量不要使用该特性,并更新现有的代码;参见本页面底部的兼容性表格以指导你作出决定。请注意,该特性随时可能无法正常工作。

KeyboardEvent.initKeyEvent 方法用于初始化使用document.createEvent("KeyboardEvent") 创建的事件的值。以这种方式初始化的事件必须使用document.createEvent("KeyboardEvent") 方法创建。在调度之前,必须调用 initKeyEvent 来设置事件。

Syntax

event.initKeyEvent (type, bubbles, cancelable, viewArg,
                    ctrlKeyArg, altKeyArg, shiftKeyArg, metaKeyArg,
                    keyCodeArg, charCodeArg)

Parameters

  • type
  • bubbles
    • : 是Boolean指示事件是否应该通过事件链冒泡(请参阅冒泡)。
  • cancelable
    • : 是Boolean我指出事件是否可以被取消(见可取消)。
  • viewArg
  • ctrlKeyArg
    • : 如果要生成的虚拟键是包含 Ctrl 键的键的组合,则为Boolean
  • altKeyArg
    • : 如果要生成的虚拟键是包含 Alt 键的键的组合,则为Boolean
  • shiftKeyArg
    • : A Boolean如果要生成的虚拟键是包含 Shift 键的键组合,则返回 true。
  • metaKeyArg
    • : Boolean如果要生成的虚拟键是包含 Meta 键的键的组合,则为 true。
  • keyCodeArg
    • : 是一个无符号长整型,表示被按下的键的虚拟键码值,否则为 0.请参阅KeyboardEvent.keyCode以获取键码列表。
  • charCodeArg
    • : 是一个无符号长整型,表示与按下的键相关的 Unicode 字符,否则为 0。

Example

var event = document.createEvent('KeyboardEvent'); // create a key event
// define the event
event.initKeyEvent("keypress",       // typeArg,
                   true,             // canBubbleArg,
                   true,             // cancelableArg,
                   null,             // viewArg,  Specifies UIEvent.view. This value may be null.
                   false,            // ctrlKeyArg,
                   false,            // altKeyArg,
                   false,            // shiftKeyArg,
                   false,            // metaKeyArg,
                    9,               // keyCodeArg,
                    0);              // charCodeArg);

document.getElementById('blah').dispatchEvent(event);

Specification

键盘事件的这种实现基于 DOM 2 事件早期版本中的关键事件规范,后来从该规范中删除。

initKeyEvent 是 DOM Level 3 事件的当前 Gecko 等价物(最初起草并且不推荐使用KeyboardEvent() Keyboard.initKeyboardEvent()方法与以下参数:

typeArg of type DOMString
canBubbleArg of type boolean
cancelableArg of type boolean
viewArg of type views::AbstractView
keyIdentifierArg of type DOMString
keyLocationArg of type unsigned long
modifiersList of type DOMString);