我已经看到了发布数据的iframe不同的方法,但我不能找到一个在那里我可以只发送一个JSON对象。 所有这些方法似乎需要我用表单元素把我的数据的采集。
Answer 1:
看看的postMessage和使用JSON.stringify您在事件处理程序的消息和JSON.parse。
要真正发布到你必须做一个IFRAME
myIframe.contentWindow.postMessage(...)
小提琴
HTML
<button onclick="_sendMessage ()">Send</button>
<iframe src="" id="myIframe">
JavaScript的
var myIframe = document.getElementById('myIframe');
myIframe.contentWindow.addEventListener('message', function(event) {
console.log(JSON.parse(event.data));
}, false);
window._sendMessage = function() {
var json = {payload:'Hello World'};
myIframe.contentWindow.postMessage(JSON.stringify(json), '*');
}
Answer 2:
您可以使用舷窗 JS库。 它把自己描述为一个“JavaScript库的安全跨网域的iFrame传播”。
它使用postMessage()
如果可以,但恢复到“隐藏代理”变通方法不浏览器。
文章来源: Posting a JSON object to an iFrame