JS跳转到指定元素的位置

 

需求背景

在开发过程中,经常遇到用户提出 如果某个内容没有填写,则需要弹出提示,并且将页面滚动到指定位置的需求。那这种情况应该怎么实现呢?
具体代码如下:

一、给链接a加个#的方式来实现跳转。

<div id="container">
    <a href="#div1">div1</a>
    <a href="#div2">div2</a>
    <a href="#div3">div3</a>
</div>

直接模拟点击链接事件即可实现跳转。

缺点:刷新界面或者回退的时候,会有问题。 

 

二、用animate属性

 
<input id="selectDepartManager" class="ant-input monthInput" style="width: 200px;" type="text" />
 $(".monthInput").blur(function () {
           
            if ($(this).val().trim() == '') {
      $("html, body").animate(
                        { scrollTop: $(this).offset().top },
                        { duration: 500, easing: "swing" }
                    );
                return;
            }
            else {
                this.style.borderColor = '#d9d9d9';
            }
        })
 
posted @ 2020-11-17 17:37  keke..lele  阅读(3408)  评论(0编辑  收藏  举报