【问题标题】:Href is not working on Edge or IEHref 不适用于 Edge 或 IE
【发布时间】:2016-07-30 08:10:14
【问题描述】:

我有这个代码,

<li class="centro-de-servicios col-md-3 col-xs-12 dropdown dropdown-toggle" data-toggle="dropdown">
        <i class="icon-centro-de-servicios"></i>
        Service Center            <i class="arrow-down"></i>
        <ul class="submenu dropdown-menu">
            <li><a href="http://beta.capris.cr/servicios/?page=centro-de-servicios&amp;section=centro-de-servicios" page="centro-de-servicios">Start</a></li>
            <li><a href="http://beta.capris.cr/servicios/?page=centro-de-servicios&amp;section=sobre-nosotros" page="sobre-nosotros">About Us</a></li>
            <li><a href="http://beta.capris.cr/servicios/?page=centro-de-servicios&amp;section=nuestras-politicas" page="nuestras-politicas">Our Policies</a></li>
            <li><a href="http://beta.capris.cr/servicios/?page=centro-de-servicios&amp;section=mantenimiento" page="mantenimiento">Maintenance</a></li>
            <li><a href="http://beta.capris.cr/servicios/?page=centro-de-servicios&amp;section=cotizar-visita" page="cotizar-visita">Quote a Visit</a></li>
            <li><a href="http://beta.capris.cr/servicios/?page=centro-de-servicios&amp;section=boletas" page="boletas">Service Tickets</a></li>
            <!--<li><a href="?page=centro-de-servicios&section=intercambio" page="intercambio"></a></li>-->
            <li><a href="http://beta.capris.cr/servicios/?page=centro-de-servicios&amp;section=consejos" page="consejos">Advice</a></li>
            <li><a href="http://beta.capris.cr/servicios/?page=centro-de-servicios&amp;section=contacto" page="contacto">Contact</a></li>
        </ul>

    </li>

当我定位在任何元素上并尝试转到另一个页面时,页面只是在刷新,而不是改变。这只发生在 Edge 和 IE 上。

我尝试了“window.location.href = 'url'”、“location.href = 'url'”、“location='url'”、“location.replace('url')”等不工作,如果将目标空白它可以工作,但我不希望目标空白。

【问题讨论】:

  • 向我们展示实际的 HTML 输出是什么样子(这里没有人能够使用 PHP 代码来重现您的结果。)请继续阅读如何创建 minimal reproducible example。跨度>
  • 谢谢,我更新到实际的 HTML 输出
  • 显示您使用的一些 javascript 代码。 location = '"http://example.com"' 在 IE 中运行良好
  • &lt;li onclick="location = 'http://beta.capris.cr/servicios/?page=centro-de-servicios&amp;amp;section=centro-de-servicios" page="centro-de-servicios'"&gt;&lt;a href="javascript:void(8)"&gt;Start&lt;/a&gt;&lt;/li&gt;
  • @CBroe 看到我的回答......关于点击处理程序的任何想法?似乎有缺陷

标签: javascript html internet-explorer cross-browser microsoft-edge


【解决方案1】:

您没有关闭网址并在其中添加额外的 page=""。

试试这样:

<li onclick = "location = 'http://beta.capris.cr/servicios/?page=centro-de-servicios&section=centro-de‌​-servicios'"><a href="javascript:void(8)">Start</a></li>

编辑: 看看你页面上的这段代码:

        jQuery(".submenu a").click(function () {
             jQuery(location).attr(jQuery(this).attr("href"));
             location.reload();
//            setTimeout(function () {
//                updatePage(currentPage, location.hash);
//            }, 10);
        });

【讨论】:

  • 我看到你给出了错误的代码示例。真正的问题是另一回事。我确实看到有一个点击处理程序
  • 查看我的编辑...点击处理程序的功能是什么?
  • @rleiva:jQuery(location).attr(jQuery(this).attr("href")); 这一行几乎没有任何意义,这段代码很可能是您在 IE 中出现问题的原因。尝试修改位置失败,所以location.reload() 只是重新加载当前页面。只需完全删除该事件处理程序,让链接的 href 属性完成它们的工作。
  • IE 控制台甚至没有显示该处理程序...通过 firebug 找到它...去图
猜你喜欢
  • 2018-11-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-09
  • 2018-04-02
  • 1970-01-01
  • 1970-01-01
  • 2017-01-16
  • 1970-01-01
相关资源
最近更新 更多