0

在为 HTML 小部件中的内部链接添加锚标记时,我只遇到了 Chrome 问题。这听起来可能并不重要,但对我自己和许多用户来说却很烦人。

加载页面时,如果第一次单击中键或按住 Ctrl 键单击链接,它们只会像应有的那样在新选项卡/窗口中打开,但第二次它们的行为就像左键单击并使用相同选项卡/窗口。由于某种原因,当我使用 Hyperlink 或 Anchor 小部件时,不会发生此问题。这在 Firefox 或 IE8 中也不是问题。

我已经验证了超链接的最终 HTML 和我的手动脚本标记完全相同。为此,我将相同的样式应用于 HTML 小部件。我什至尝试创建一个超链接并调用 toString() 来生成 HTML,但错误仍然存​​在。

有谁知道为什么会发生这种情况或对如何补救有任何想法?这是我无法使用小部件的情况,因此我需要手动创建标签 HTML。我不是 GWT 专家,但我不明白编译后的代码如何处理超链接和锚点小部件,而不是 HTML 小部件中的小部件。对此的任何煽动都可能会有所帮助。

我很想知道其他人是否也可以复制这个。我正在运行 Chrome 23.0.1271.97 和 GWT-2.5.0。我知道这发生在旧版本的 Chrome 和 GWT 中,因为它一直是一个问题,至少从 GWT-2.4 开始。

无趣的细微差别:如果同一个 HTML 中有两个不同的链接,它们的 bug 将独立发生。这意味着您可以中键单击每一个,它们都将正常工作,而不是第二次。刷新页面也会重置它们,因此下次中键单击时不会发生错误。我还发现,如果 HTML 小部件中包含两次相同的链接,它们实际上不会独立工作。意思是中键单击一个会导致另一个错误地处理它的第一次中键。

4

1 回答 1

2

刚刚调试完这个。这不是 GWT 问题,而是 Chrome 问题。

我创建了一个错误报告:http ://code.google.com/p/chromium/issues/detail?id=177502

您可以使用这个简单的 HTML 页面进行重现:<!DOCTYPE html> <a href="#local">LOCAL</a>

于 2013-02-21T22:12:02.793 回答