/ / Evento duplicato nella finestra principale: javascript, html, dom, javascript-events

Evento duplicato nella finestra principale: javascript, html, dom, javascript-events

Ho un iframe sulla mia pagina. L'iframe ha la stessa origine della mia pagina, quindi non dovrei preoccuparmi troppo dei problemi di sicurezza di origine incrociata.

Nel frame principale, ho un listener di eventi "keydown" che controlla determinate pressioni dei tasti. Ma se l'iframe ha il focus, gli eventi "keydown" sono registrati solo nell'iframe.

Vorrei duplicare l'evento "keydown" iframe sul frame principale.

È possibile? Ho guardato document.createEvent e evt.initEvent ma io non sono ancora lì. Inoltre, se creo un evento "keydown", questo in realtà agirà come se l'utente avesse digitato un carattere? Ad esempio, posso indirizzarli a un campo sul documento principale?

risposte:

0 per risposta № 1

se si utilizza jquery, dichiarare una funzione wrapper nel genitore che attiva il keydown dell'elemento di input:

function triggerKeyDown(){
$("#my_input").keydown();
}

Nel tuo iframe, chiama

window.parent.triggerKeyDown();

per attivare l'evento keydown nella finestra principale.