模拟锚点滚动element.scrollIntoView()
scrollIntoView()
方法调用它的元素滚动到浏览器窗口的可见区域(页面内容可滚动才有效)。
语法:
element.scrollIntoView();
// 等同于element.scrollIntoView(true)
element.scrollIntoView([布尔参数]);
布尔参数 = true时元素的顶部将对齐到可滚动祖先的可见区域的顶部 ,相当于对象参数的 {block: “start”, inline: “nearest”} ;
布尔参数 = false时 元素的底部将与可滚动祖先的可见区域的底部对齐 ,相当于对象参数的 {block: “end”, inline: “nearest”} ;
element.scrollIntoView([对象参数])
对象参数有三个:
1、behavior:过渡动画’auto’、’instant‘或者’smooth’,默认为’auto’。
2、block: 垂直方向的对齐 ‘start’,‘center’,‘end’或’nearest’。默认为’center’。
3、inline: 水平方向的对齐 ‘start’,‘center’,‘end’或’nearest’。默认为’nearest’。
示例
var box = document.getElementById("box");
box.scrollIntoView();
box.scrollIntoView();
box.scrollIntoView(false);
box.scrollIntoView({block: "end"});
box.scrollIntoView({behavior: "instant", block: "end", inline: "nearest"})
以上只是个人理解,有不同理解请各位大佬指教