Javascript 如何显示一个div,然后滚动到它

Javascript 如何显示一个div,然后滚动到它,javascript,jquery,html,Javascript,Jquery,Html,我有一个包含许多隐藏div的页面,单击相应的按钮即可切换这些div。非常基本的jQuery内容。现在,我想做的是在其中一个div中有一个相对的超链接(例如),它打开另一个div并将页面滚动到此元素。当链接未连接到jQuery中的事件时,我可以让它滚动到可见,当链接连接到jQuery时,我可以打开div。但我想同时做这两件事 这是我的经纪人 $('.B2BHL').click(function() { var month = this.href.substring(this.href.

我有一个包含许多隐藏div的页面,单击相应的按钮即可切换这些div。非常基本的jQuery内容。现在,我想做的是在其中一个div中有一个相对的超链接(例如),它打开另一个div并将页面滚动到此元素。当链接未连接到jQuery中的事件时,我可以让它滚动到可见,当链接连接到jQuery时,我可以打开div。但我想同时做这两件事

这是我的经纪人

  $('.B2BHL').click(function() {
    var month = this.href.substring(this.href.indexOf('#') + 1);
    //$('#' + month + 'div').show();
    window.location.href = this.href;
  });
show()
调用被注释掉时,它会滚动。未注释时,会打开div,但不会滚动到该div

关于堆栈溢出,我发现了以下两个问题:

但两者都不适合我。我正在使用IE11。有人能提供建议吗


谢谢我想问题可能出在
show()
函数上,您可以尝试稍微修改代码,以便在show函数完成后更改
窗口.location.href
,如:

$('.B2BHL').click(function() {
    var month = this.href.substring(this.href.indexOf('#') + 1);
    var href = this.href;
    $('#' + month + 'div').show({
        complete: function() {
           window.location.href = href;
        }
    });    
});

事实上,我回去查看了我发布的第一个链接(),再次尝试,结果成功了

  $('.B2BHL').click(function() {
    var idx = this.href.indexOf('#');
    var month = this.href.substring(this.href.indexOf('#') + 1);
    var href = this.href;
    $('#' + month + 'div').show({
      complete: function() {
        goToByScroll(month + 'div');
      } 
    }); 
  });

对不起,我在这方面投入的精力不够。感谢所有回复者的帮助

如果您可以使用Snippet或。