Javascript 仅使用客户端在两个HTML页面之间传递大量数据
假设我们有两个页面:Javascript 仅使用客户端在两个HTML页面之间传递大量数据,javascript,jquery,html,Javascript,Jquery,Html,假设我们有两个页面:A.html和B.html。它们没有相同的来源(相同的域、端口或其他),但我可以编辑它们 我想使用iframe将B.html嵌入A.html。B.html中的元素使用传递给页面的数据(使用jQuery)进行更改 我想将一个很长的字符串从a发送到B。我的第一次尝试是使用url搜索参数: <iframe src=".../B.html?param=a_very_very_long_encoded_string#some-hash"></iframe>
A.html
和B.html
。它们没有相同的来源(相同的域、端口或其他),但我可以编辑它们
我想使用iframe
将B.html
嵌入A.html
。B.html
中的元素使用传递给页面的数据(使用jQuery)进行更改
我想将一个很长的字符串从a发送到B。我的第一次尝试是使用url搜索参数:
<iframe src=".../B.html?param=a_very_very_long_encoded_string#some-hash"></iframe>
该应用程序仅在本地计算机上运行良好,但在web上我得到414请求URI太大
错误
我不知道如何才能做到这一点,只有使用客户端
是否有其他选择,或者我必须使用服务器端的POST方法?这看起来是一个很好的使用案例。Postmessages允许父页面与其iframe或打开的窗口(两种方式)之间进行跨域通信。至于对发送的消息大小的限制,我认为它们足够大,可以处理从一个窗口到另一个窗口跨域发送的大多数内容。MDN中未提及任何限制
就浏览器支持而言。所有现代浏览器都支持它,但是IE8只支持iFrame,而IE7根本不支持它。IE10支持它,但有一些限制,如MDN中所述。看看如何使用localStorage-这将满足您的需要,只要两个页面位于同一个域上。@Archer这就是问题所在!这两个页面不在同一个域上…@Archer我不认为本地存储有什么帮助。如果您可以编辑B的php头以允许跨域请求,那么我建议使用ajax@koala_dev他没有说明它是否是跨域的,这就是为什么我说“只要两个页面都在同一个域上”。他在问题中添加了这些信息,因为我提出了这个问题。在加载回调中,应用数据。IE真的是浏览器吗?非常感谢。似乎是正确的答案。:-)遗憾的是,我仍然需要为IE7提供功能支持,但这并没有那么糟糕。不,我是Linux用户,不需要IE支持。:-)这是一个很好的教程。非常感谢。它可以像预期的那样工作。对于那些坚持传统支持的人来说,
window.name
hack可能是一个可以求助的地方,下面介绍一下它的优点和缺点