Emscripten logo

Столкнулся с проблемой на itch.io, когда приложение запущенной внутри iframe, то оно не получает события клавиатуры. Придумал вот такой workaround:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
postRun: (function() {
window.addEventListener('mousedown', function(evt) {
window.focus();
// evt.preventDefault();
evt.stopPropagation();
evt.target.style.cursor = 'default';
}, false);
})(),
postRun: (function() { window.addEventListener('mousedown', function(evt) { window.focus(); // evt.preventDefault(); evt.stopPropagation(); evt.target.style.cursor = 'default'; }, false); })(),
postRun: (function() {
   window.addEventListener('mousedown', function(evt) {
      window.focus();
      // evt.preventDefault();
      evt.stopPropagation();
      evt.target.style.cursor = 'default';
   }, false);
})(),

К событию postRun добавляем установку листенера на событие mousedown. Теперь при клике мышью на канавасе с игрой события от клавиатуры будут передаваться в наше приложение.