KeyboardEvent.initKeyEvent()

 

非标准
该特性是非标准的,请尽量不要在生产环境中使用它!

已废弃
该特性已经从 Web 标准中删除,虽然一些浏览器目前仍然支持它,但也许会在未来的某个时间停止支持,请尽量不要使用该特性。

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

不要再使用这个方法,而是使用KeyboardEvent()构造函数。
该方法基于Document Object Model (DOM) Level 2 Events Specification的早期草案,并在基于Gecko的浏览器中实现; 其他浏览器基于Document Object Model (DOM) Level 3 Events Specification的早期草稿实现KeyboardEvent.initKeyboardEvent。 将现代构造函数结构视为构建事件的唯一跨浏览器方式。

Syntax

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

Parameters

type
是表示事件类型的DOMString
bubbles
Boolean指示事件是否应该通过事件链冒泡(请参阅冒泡)。
cancelable
Boolean我指出事件是否可以被取消(见可取消)。
viewArg
指定UIEvent.view; 此值可能为空。
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);

 

文档标签和贡献者

此页面的贡献者: bingxl, ply, Wonder233
最后编辑者: bingxl,