JavaScript中scrollTo()無效問題處理辦法
需求: 實現(xiàn)訪問當前頁面直接滾動到最底部
方案:window對象的scrollTo()方法
API介紹:
參數(shù)接收一個點(文檔坐標),讓該點位于左上角。
可選參數(shù)為behavior(設置滾動的效果)
錯誤案例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
div{
background-color: aquamarine;
width: 200px;
height: 2000px;
}
</style>
</head>
<body>
<div>nixx</div>
<span>云想衣裳花想容,春風拂檻露華濃。
若非群玉山頭見,會向瑤臺月下逢。</span>
<script>
// 獲取文檔的高度和視口的高度
let docH = document.documentElement.offsetHeight,
viewH = window.innerHeight
// 滾動到文檔底部
window.scrollTo(0,docH - viewH);
</script>
</body>
</html>
實際效果是并沒有發(fā)生滾動

正確的案例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
div{
background-color: aquamarine;
width: 200px;
height: 2000px;
}
</style>
</head>
<body>
<div>nixx</div>
<span>云想衣裳花想容,春風拂檻露華濃。
若非群玉山頭見,會向瑤臺月下逢。</span>
<script>
// 獲取文檔的高度和視口的高度
let docH = document.documentElement.offsetHeight,
viewH = window.innerHeight
// 滾動到文檔底部
setTimeout(()=>{
window.scrollTo(0,docH - viewH);
})
</script>
</body>
</html>

問題分析記錄:

直接調(diào)用window.scrollTo方法,然后打斷點,你會發(fā)現(xiàn)已經(jīng)滾動了

但是當結(jié)束斷點,又回到了原來的位置
于是猜想著讓該方法異步調(diào)用,發(fā)現(xiàn)成功了
總結(jié)
到此這篇關(guān)于JavaScript中scrollTo()無效問題處理辦法的文章就介紹到這了,更多相關(guān)js scrollTo()無效內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
對 lightbox JS 圖片控件進行了一下改造, 使其他支持復雜的圖片說明
如果要為圖片添加詳細的圖片說明,并為圖片的說明設置一些格式,如字體的大小、顏色等,那么使用 title 這個屬性來設置這些說明信息是沒辦法實現(xiàn)的。2010-03-03
除Console.log()外更多的Javascript調(diào)試命令
本篇文章給大家介紹了除Console.log()外更多的Javascript調(diào)試命令,方便大家更多環(huán)境下的JS調(diào)試,學習下吧。2018-01-01
javascript 將共享屬性遷移到原型中去的實現(xiàn)方法
下面小編就為大家?guī)硪黄猨avascript 將共享屬性遷移到原型中去的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-08-08

