Javascript 如何在单击按钮后显示div,然后滚动到该按钮?

Javascript 如何在单击按钮后显示div,然后滚动到该按钮?,javascript,jquery,Javascript,Jquery,是否有一种方法可以在单击按钮后显示div,然后滚动到该按钮?我正在使用以下代码。它显示了div,但我必须再次单击按钮才能滚动到div。有没有办法让按钮单击两次 $(document).ready(function(){ $("div#home-btn-1").on('click', function () { $('div.hide-section-mobile').addClass("show"); $('#home-btn-1').scrollTo('#funne

是否有一种方法可以在单击按钮后显示div,然后滚动到该按钮?我正在使用以下代码。它显示了div,但我必须再次单击按钮才能滚动到div。有没有办法让按钮单击两次

$(document).ready(function(){
  $("div#home-btn-1").on('click', function () {

     $('div.hide-section-mobile').addClass("show");
      $('#home-btn-1').scrollTo('#funnel-1-mobile');
  });
});
使用
location.hash=“elementID”

替换
$('#home-btn-1')。滚动到('#漏斗-1-mobile')

使用
location.hash='funnel-1-mobile'


下面是一个示例:

只需扩展您的逻辑,在单击事件中检查类是否显示。如果它是滚动到它,我修改了我的代码以在下面的示例中工作:

$(“#家庭btn”)。在('click',function()上{
$('funnel-1-mobile').hasClass(“show”)?console.log(“Adding”):$('funnel-1-mobile').addClass(“show”);
$(窗口).scrollTop(1500);
});
div{
背景色:石灰;
宽度:500px;
高度:100px;
利润率:10px;
}
#漏斗-1-移动{
背景色:靛蓝;
颜色:白色;
显示:无;
}
.表演{
显示:块!重要;
}

单击以滚动
我滚动了试试这个

$(document).ready(function(){ 
    $("div#home-btn-1").on('click', function () { 
        $('div.hide-section-mobile').addClass("show").scrollIntoView();
    }); 
});

答案是,,“很多。荒谬的数目。比你想象的要多。当你已经走到了尽头,没有答案的痛苦超过了发帖所带来的巨大耻辱,这时你可以继续提问。因为在那一点上,你将做任何必要的研究,使它成为一个值得问的好问题!“我不知道为什么我的答案会被否决,但这里有一个使用
位置的工作示例。hash
为什么我的答案会被否决,尽管它有效?它在手机上不起作用。遗憾的是:/它在第一次单击时显示div,但除非我再次单击它,否则不会滚动到它。这是我单击“获取更多信息”时的网站“我需要它显示mobile中的下一个div,它会显示,然后滚动到它。有没有办法让按钮自己单击两次?当按钮单击一次时,它会同时执行这两个操作,您是否尝试过我的代码和上面的示例?首先,有一个锚可以滚动到元素,所以你可以删除滚动部分,或者anchorI尝试了这个,但就像以前一样,在mobile中,它只显示滚动部分,除非我第二次点击同一按钮,否则它不会滚动到该部分。这是当我点击“获取更多信息”时的站点,我需要它显示mobile中的下一个div,它会显示,然后滚动到它。哦,我看到你想在一次点击中完成这两项。我没有完全理解你的问题。有没有办法让按钮自己点击两次?嗯,你可以,在其他情况下,只需使用
trigger('click')
。这样,当您单击它时,它会添加类并立即调用自己,从而触发滚动条。这对我来说很有效。谢谢