我一直有一些問題發送JavaScript到一個使用不同端口的iFrame,並在網上搜索後,似乎'不同的端口'部分導致了這個問題。將JavaScript發送到使用不同端口的iFrame?
這裏是發送JavaScript來的IFRAME代碼:
<script>
var network = document.getElementById("1").contentWindow.kiwi.components.Network();
$(".irc-channel-selector").click(function(event){
network.join('#' + $(this).attr('data-irc-channel'));
});
</script>
的iFrame中不使用80端口這似乎是這個問題:
<iframe id="1" src="http://www.example.com:7888">
我明白,我可以使用一種叫做postMessage做與我需要的一樣,但在網上閱讀它我不知道它應該如何使用,它似乎很複雜,而我只用於基本的JavaScript,如我上面寫的代碼。
有人可以提供一個關於如何使用這個postMessage來模仿上面的行爲的例子嗎?閱讀在線文檔我不明白如何在我的場景中使用它! :(
你對iframe中的javascript/html有控制嗎?如果是這樣,'postMessage'可能是您最好的解決方案,相信我並不比您已經完成的複雜得多!查看https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage中的示例 - 如果您確實可以控制iframe中的代碼,我可以發佈一個可能的答案。 – Sergio
@Sergio是的,我確實控制它,如果你能做到這一點,我會非常感激! – user5603796