【发布时间】:2011-09-24 06:12:43
【问题描述】:
情况:由于各种原因(主要是它有时会在 Internet 不可用的情况下使用),我正在构建的一些 JavaScript 繁重的 HTML 必须能够有时严格地在客户端上运行,使用不涉及服务器。在大多数情况下,我已经能够想出一些解决方法,允许该站点的页面通过通常的浏览器“另存为”机制保存,嵌入他们需要的所有部分,并按摩路径以引用我想要的位置当浏览器不够智能以修复 URL(这比我想象的更频繁)时,它们可以(在本地计算机上)。
不过,我还没有解决一个问题:每个主页都可以在新标签/窗口中打开帮助页面。为此,我将帮助页面的内容嵌入到保存的主页面中。然后我可以使用helpWindow.document.write(helpContent) 打开它。问题:就浏览器而言,帮助页面最终与原始页面具有相同的 URL,因此我无法在该页面上有效地使用页面内部链接:如果您单击,它会尝试加载保存的主页面一个!
例如:<a name="target" /> ... <a href="#target">link</a> 在帮助页面中:如果您点击“链接”,浏览器会加载保存的主页面,而不是滚动帮助页面。
我的临时解决方法是当我必须在此环境中操作时剥离这些链接,但我肯定有办法让它们工作。有什么建议么?建议可能包括打开帮助页面的完全不同的方式。不过,我宁愿不使用 iframe,我真的希望它留在单独的选项卡/窗口中。
【问题讨论】:
-
您可以在 HTML/JavaScript 上下文中使用选项卡...意思是,页面本身有一个选项卡栏(或者可能在需要时添加一个),并且您隐藏或显示 DIV 取决于点击的标签/链接。
-
只是可能。我相信只有在无法同时显示帮助内容和常规页面(因为通过链接滚动会滚动整个页面)时,它才会解决我的内部链接问题。另外,我喜欢在另一个窗口(或撕开标签)中选择此选项,以便想要同时查看两者的用户可以。
标签: javascript html cross-browser