无论如何都要将JavaScript对象传递给window.open()而不使用URL中的对象。我知道我可以在将URL加载到div中时执行此操作:
$("#myDiv").load(urlForWindow, { data: data });
但有没有办法可以为窗户做到这一点:
var win = window.open(urlForWindow, '_blank', { data: data });
答案 0 :(得分:0)
好的,我意识到,为什么要这样做更难。只需使用ajax post to an api.
答案 1 :(得分:0)
function openWithData(url, data){
window.open(url, "page");
const ping = setInterval(() => {
window.postMessage(data, "*");
}, 100);
window.addEventListener("message", ({data}) => {
if(data === "received") clearInterval(ping);
});
}
在加载的页面上:
window.addEventListener("message", ({data}) => {
window.postMessage("received","*");
//Do whatever with data
});