使用applicationCache保留对子窗口的引用

时间:2011-03-15 11:58:07

标签: javascript html5

我正在创建一个音乐播放网站,将音乐播放器加载到第二个窗口。这个想法是用户可以浏览主页面上的歌曲库,同时能够将歌曲添加到第二页的播放列表。

这在使用AJAX调用浏览库时工作正常,但在理想的世界中,用户还可以导航到站点中的不同页面并仍然可以访问该播放器。

我开始认为这是不可能的?我已经研究过存储窗口引用(但它们不能被序列化),我也尝试从子窗口重置父窗体中的子引用(这有意义吗?)。

我已经确定了这个解决方案:子窗口每隔100毫秒在其开启器上调用setChild方法。这就像我想的那样,不幸的是,这似乎是对资源的巨大浪费,我不得不认为必须有更好的方法。

我在这里发现了类似问题的解决方案:

Retrieve child window reference after refresh

但我找不到有关applicationCache的足够信息。我可以在卸载时保存对缓存的引用,然后从其他页面重新加载吗?

感谢并抱歉留言

1 个答案:

答案 0 :(得分:2)

我还没有验证这个解决方案但你应该能够通过对window.open进行新的调用并为url提供一个空字符串并指定与window.open的原始调用相同的窗口名来恢复引用。 ()。

至少你可以做500毫秒而不是100毫秒,这应该会大大减少你的资源负担。