【问题标题】:Can I determine whether clicking a link successfully opened a new window/tab?我可以确定单击链接是否成功打开了新窗口/选项卡?
【发布时间】:2013-04-20 05:19:39
【问题描述】:

我在<a> 元素中有一个<input> 元素,这意味着点击时IE8 会忽略<a> 元素的href 属性。它适用于所有其他浏览器。 有没有办法确定新标签/窗口是否打开? 然后我可以给用户一个正常/丑陋的链接,如果它不起作用,请点击它。

代码示例:

<a target="_blank" href="http://somelink.com"><input type="button" class="standard_button_styling" /></a>

我尝试过的:

  1. 删除&lt;input&gt; 标记并设置&lt;a&gt; 标记的样式:我无法让它看起来像我的其他按钮(可能是由于本机浏览器样式),我不希望每个人都修复它只有 IE8 的问题。
  2. 使用 JavaScript window.open() 触发链接:这不会在 IE 中发送referer_url,我的示例中的 somelink.com 依赖它。所以我需要让用户点击一个普通的链接。
  3. 浏览器检测:我可以只寻找 IE8 并为 IE8 提供不同的响应,但浏览器检测而不是功能检测被认为是不好的做法,我想尽可能避免它。

【问题讨论】:

    标签: javascript jquery html internet-explorer-8 href


    【解决方案1】:

    您可以尝试使用&lt;button&gt; 而不是&lt;input&gt;,但我不确定这是否能解决问题。
    或者直接使用&lt;form&gt;

    <form method="get" target="_blank" action="yourlink">
        <input type="submit" value="Click" />
    </form>
    

    【讨论】:

    • 把它变成一个按钮是行不通的——但是把它变成一个表单是可行的。谢谢!
    猜你喜欢
    • 2012-01-10
    • 2010-12-01
    • 2010-09-24
    • 2019-08-23
    • 1970-01-01
    • 2010-10-25
    • 2013-02-15
    • 2013-03-22
    相关资源
    最近更新 更多