title: Force software keyboard to show on focused input in HTML load
body: <p>With simple HTML page, how to open programmatically software keyboard after document loaded on smartphones ?
  For better user ergonomics, the goal is to focus on the first input with the softkeyboard already open. Just to write and continue.</p>
  
  <p><strong>Without any interaction of user</strong>,
  and after page is loaded,
  neither .focus() .click() and trigger touchstart/touchend/mousedown/mouseup open the system soft keyboard.</p>
  
  <p>An idea ?...</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;!DOCTYPE html&gt;
  &lt;html&gt;
  
  &lt;head&gt;
    &lt;meta charset="utf-8" /&gt;
    &lt;script&gt;
      var loadDOM = 0;
      var loadload = 0;
  
      function fullloaded() {
        if (loadDOM == 1 &amp;&amp; loadload == 1) {
          var el = document.getElementById('test2');
          triggerEvent(el, 'touchstart');
  
          var el = document.getElementById('test2');
          triggerEvent(el, 'touchend');
  
          var el = document.getElementById('test2');
          triggerEvent(el, 'mousedown');
  
          var el = document.getElementById('test2');
          triggerEvent(el, 'focus');
          el.focus();
  
          var el = document.getElementById('test2');
          triggerEvent(el, 'mouseup');
  
          var el = document.getElementById('test2');
          triggerEvent(el, 'click');
          el.click();
        }
      }
  
      document.addEventListener('DOMContentLoaded', function(e) {
        logEvent('DOMContentLoaded');
        loadDOM = 1;
        fullloaded();
      });
  
      window.addEventListener("load", function(event) {
        var logEvent('load : All resources finished loading!');
        loadload = 1;
        fullloaded();
      });
    &lt;/script&gt;
  &lt;/head&gt;
  
  &lt;body&gt;
    &lt;input id="test2" placeholder="_default_" /&gt;
  &lt;/body&gt;
  
  &lt;/html&gt;</code></pre>
  </div>
  </div>
  </p>