WebKit丢失带有跳过链接的URL中的参数

时间:2012-10-30 15:27:30

标签: webkit url-parameters

我们有一些生成的网页,其网址包含http://example.com/page.do?param1=hello等参数。这些页面包含命名锚点,< a name =“here”>像这样< / a>。并且有相应的链接引用命名的锚点,< a href =“#here”>像这样< / a>。今天大多数人称之为“跳过链接”。

单击跳过链接会导致浏览器创建并跟踪与原始URL匹配的URL,并在末尾添加命名锚点:http://example.com/page.do?param1=hello#here

在Firefox和IE上,这很好用。在Chrome,Safari和其他基于WebKit的浏览器上,参数会丢失,导致http://example.com/page.do?#here对我们的网站无效,只会导致404错误。

有趣的是,如果您手动将完整链接放在位置栏中并按Enter键,则表明其行为正常。

我已经谷歌搜索了一段时间,看到很多关于WebKit有关跳过链接问题的讨论,但没有一个与这里失去参数的情况相符。

参数丢失是否已知错误?有没有人见过解决方法?

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。据我所知,这与使用这样的元标记有关:<base href="http://example.com" />。设置后,我的链接指向example.com#foo而不是example.com?foo=bar#foo

知道我发现了这个问题。所以锚标记行为是一个已知的事情: Is it recommended to use the <base> html tag?

由于我无法移除基本代码,因此我会尝试使用JavaScript处理此问题。