【问题标题】:Blank link losing parameters in IE on button click单击按钮时 IE 中的空白链接丢失参数
【发布时间】:2016-01-07 21:17:07
【问题描述】:

我有一个应用程序,我刚刚添加了一个横幅 cookie 供浏览器确认接受 cookie。

我从我们组织的另一个站点借用了相当多的 jquery 代码。此站点存在 o 问题,但它是静态站点,而我的应用程序是 REST 应用程序。

基本上,横幅上有文字和链接,还有一个“按钮”(链接)用于接受和删除横幅。

是这样的

<a href="" class="tick" id="impliedok">I understand<a>

在 chrome 中,这在任何地方都可以正常工作。在静态站点上,这工作正常,在我的应用程序的某些页面上,这工作正常。大概在浏览器引擎盖下有一些东西使一个空白链接指向当前页面,就好像我悬停在链接上一样,我得到了一条捷径。在 chrome 中,它是正确的快捷方式,但在 IE 中,链接指向没有参数的快捷方式,例如

http://localhost:8080/search/account?term=*

似乎链接到

http://localhost:8080/search/

在 IE(8 和 11)中。但链接到 Chrome 中的完整 URL。

有没有简单的解决方法?

抱歉,我还没有对此进行过多调查,因为它打算在今晚上线。我只是想知道这是不是一个明显的问题,有人可以在我推迟上线并将其全部拆散之前向我指出!?

【问题讨论】:

  • 尝试使用href="#"
  • 感谢这项工作顺利进行,但在显示的 url 末尾留下了一个不整洁的 #。我会接受这一点(尽管我猜这个业务是否更相关......)但我选择了 $(location).attr("href")。非常感谢。
  • 不知道为什么你会有一个没有href的链接...
  • 说实话,我是从别人那里借来的(相当复杂的)脚本。我认为它只是用作提供所需格式的关闭按钮的简单方法(稍后添加了一个相关功能来关闭横幅)。我想这不是唯一的方法,但它并没有给原作者带来任何问题(并且在测试过程中一直错过!)

标签: javascript jquery cross-browser


【解决方案1】:

你打错字了,

<a href="" class="tick" id="impliedok">I understand<a> 

应该是

<a href="" class="tick" id="impliedok">I understand</a>

如果这不能解决问题,您可以尝试将 onclick 事件添加到链接

<a href="" class="tick" id="impliedok" onclick="location.href='pageurl.html';">I understand</a>

【讨论】:

  • 抱歉,错字仅是我在问题中而不是在代码中。 onclick="location.href='pageurl.html';"似乎没有任何区别,但我会再调查一下,看看我是否错过了重点......
【解决方案2】:

我想我应该投反对票,因为我可以很容易地提出这个答案,要么不问问题,要么问是否有更优雅的解决方案。

我已选择明确使用

$(location).attr("href") 

我试图避免只是因为我认为我错过了一些非常明显的东西。

如果我犯了大错,请告诉我。如果您认为这真的太简单而无法用作问题,请添加一些反对意见,我将删除该问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多