2014-10-04 106 views
1

我有一個基本的HTML設計,其中有一個IFRAME,如果我想用箭頭/頁面向上滾動滾動,首先我必須關注iframe。相反,我想將按鍵事件「轉發」給它。在:Javascript:將按鍵事件傳遞給iframe

<script> 
document.onkeypress = function(e) { 
    top.frames['iframe'].document.onkeypress(e); 
} 
</script> 

但這是行不通的。 我不能使用jQuery!

回答

5

HTML5中有一項新功能「window.postMessage」,它允許在iFrame和託管窗口之間進行通信。

Mozilla Developer Center - window.postMessage頁面上有一些很好的文檔。

//Syntax 
otherWindow.postMessage(message, targetOrigin, [transfer]); 
+1

好的答案,雖然它不是那麼新。 HTML5已經存在了相當長一段時間了,希望每個人都使用它,而不是過時的技術。 :) – jmort253 2014-10-04 17:43:05

+3

哈哈希望每個人都使用HTML5 :) – ShufflebuyLLC 2014-10-04 17:46:38