javascriptgoogle-docskeypress

Google Docs simulate keyboard


I need to simulate keyboard in google docs with using JavaScript to be able print or erase characters on cursor position.
Unfortunately solutions with simulating keypress event didn't work for me. I tried with and without jQuery.
After some investigation I detected that Google Docs have virtual keyboard. Clicks on virtual keys calls this function:

C.MOa = function(a) {
  this.dispatchEvent(new Q(Td, {keyCode: a}))
};

Where Td is a string "action" and Q some Event class.
What is the correct way to send this event with java script? Is there other ways to simulate keyboard in Google Docs?


Solution

  • Seems like Google Docs have special iframe to handle keyboard events. Here is it’s contents:

    <html>
        <head></head>
        <body spellcheck="false" role="textbox" aria-label="Document content" contenteditable="true" style="background-color: transparent;"></body>
    </html>
    

    Just dispatch keyboard events to this document to print characters on google doc.