简单的JS MouseEvent和KeyboardEvent无法正常工作

问题描述 投票:0回答:1

我希望下面这个简单的js / html示例单击输入并写入字母Q.

我在这做错了什么?

var evt = new MouseEvent("click", {
  bubbles: true,
  cancelable: true,
  view: window
});
document.getElementById('writeToMe').dispatchEvent(evt);

var e = new KeyboardEvent("keydown", {
  bubbles: true,
  cancelable: true,
  key: "Q",
  char: "Q"
});
document.getElementById('writeToMe').dispatchEvent(e);
<input type="text" id="writeToMe">
javascript html mouseevent keyboard-events
1个回答
0
投票
<input type="text" id="writeToMe">

window.onload = function(){
    var event;
    //click handler
    .addEventListener("click",function(){
        alert("clicked");
    },false);


    //This is true only for IE and firefox
    if(document.createEvent){
        // To create a mouse event , first we need to create an event and then initialize it.
        event = document.createEvent("MouseEvent");
        event.initMouseEvent("click",true,true,window,0,0,0,0,0,false,false,false,false,0,null);
    }
    else{
        event = new MouseEvent('click', {
            'view': window,
            'bubbles': true,
            'cancelable': true,
          key: "Q",
          Char:"Q"
        });
    }

    writeToMe.dispatchEvent(event);
};
© www.soinside.com 2019 - 2024. All rights reserved.