【问题标题】:How to get rid of Internet Explorer 7 reloading on fragment change如何摆脱 Internet Explorer 7 在片段更改时重新加载
【发布时间】:2010-03-18 17:01:18
【问题描述】:

我的页面某处有一个锚点<a href="#!admin">General</a>。在任何浏览器中单击此按钮,但 IE7(尚未尝试过 IE6)不会导致页面重新加载,如预期的那样。但是,在 IE7 下,它会在单击后立即重新加载页面。最奇怪的是我在页面的其他地方有完全相同的锚点,它不会导致重新加载。我能看到它们之间的唯一区别是样式略有不同,而且有缺陷的锚点深深嵌套在 div 中,而另一个更靠近顶部。

我的问题:

  • 这是 IE7 的已知错误吗?
  • 如果是这样,是否有任何解决方法?
  • 如果不是,任何关于可能是什么的线索 出错了吗?

编辑:

如果您想亲自查看此内容,请使用 Google 帐户登录 http://filouguestbook.appspot.com/#!main,然后单击顶部栏中的 Settings 链接。在GeneralAccounts 页面之间切换,应用程序将重新加载。在Accounts页面,点击顶部栏中的Settings,这将切换标签但不会重新加载!

【问题讨论】:

  • 标签是否正确关闭?
  • 是的。事实上,DOM 是由 GWT 动态生成的。我引用了 Chrome 中的 DOM 资源管理器。
  • @Philippe:那你检查过 IE 开发者工具了吗?它们在 IE 中可能有所不同。
  • @Andy:有什么好工具可以推荐给 IE7 吗? (我稍后会在 IE8 中检查它们,但这不是最好的测试,因为问题没有出现在那里。)
  • @Philippe: IE Developer Toolbar 几乎是一样的东西 - microsoft.com/downloads/…

标签: javascript html web-applications gwt internet-explorer-7


【解决方案1】:

我们遇到同样的问题。对此有一个issue,并提到了一些解决方法。

【讨论】:

    【解决方案2】:

    我也遇到过类似的问题,如果该位置已经没有“#”,动态添加它会导致 IE 重新加载页面。如果当前位置已经有一个“#”,您可以更改/附加到片段而无需刷新。

    因此,您可以确保指向该页面的所有链接都以 # 结尾,和/或 onload 如果它不存在则添加 #(这将导致页面在加载时双刷新一次)。

    【讨论】:

    • @Rob:情况并非如此,而且从未如此。您可以通过向上滚动并将您的帖子编号添加到此页面地址栏中的哈希值来进行测试:#2472320
    • 几周前我在 IE 上遇到了这个确切的问题,这就是修复。也许这不是 IE 的错,而是页面中的其他内容造成的,现在无法测试...
    猜你喜欢
    • 2023-04-02
    • 1970-01-01
    • 1970-01-01
    • 2021-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多