Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在所选选项卡上重新加载不会';我不在IE工作_Javascript_Jquery_Internet Explorer 11 - Fatal编程技术网

Javascript 在所选选项卡上重新加载不会';我不在IE工作

Javascript 在所选选项卡上重新加载不会';我不在IE工作,javascript,jquery,internet-explorer-11,Javascript,Jquery,Internet Explorer 11,我的网页上有两个标签:付款和对账单。 我使用以下代码在重新加载同一页面时自动切换到所选选项卡 $('#advancedSearchTabs a').click(function(e) { e.preventDefault(); $(this).tab('show'); }); // store the currently selected tab $("ul.nav-tabs > li > a").on("shown.bs.t

我的网页上有两个标签:付款和对账单。 我使用以下代码在重新加载同一页面时自动切换到所选选项卡

$('#advancedSearchTabs a').click(function(e) {
        e.preventDefault();
        $(this).tab('show');
    });

    // store the currently selected tab
    $("ul.nav-tabs > li > a").on("shown.bs.tab", function(e) {
        var id = $(e.target).attr("href").substr(1);
        window.location.hash = id;
    });

    // on load of the page, switch to the currently selected tab
    var hash = window.location.hash;
    $('#advancedSearchTabs a[href="' + hash + '"]').tab('show');

这适用于除Internet Explorer 11之外的所有浏览器。在那里,我总是跳回第一页。如何在Internet explorer中执行此操作

确保您正确获取IE的事件目标

$("ul.nav-tabs > li > a").on("shown.bs.tab", function(e) {
  var target = e.target || e.srcElement; //srcElement for IE
  var id = target.getAttribute("href"); //No need for jQuery here
  history.pushState('','',id); //Try pushState
});

var hash = (location.href.split("#")[1] || ""); //Crossbrowser compatible
$('#advancedSearchTabs a[href$="' + hash + '"]').tab('show'); //Add $ to href attribute ends with "hash"

我添加了您的一行附加代码,但它不起作用。如果在新行之后使用
console.log(target)
,控制台中会有什么内容?会显示正确的href,但我仍会转到“付款”选项卡。编辑了我的答案。请尝试
(location.href.split(“#”)[1]| |“”
而不是
window.location.hash
以获取锚定