JavaScript控制滾動條滾動到指定位置


1.打開一個網址,F12,定位到我們想到滾動的位置

比如定位到翻頁的位置,我們可以取到翻頁div的class=page-inner

2.在Consle輸入滾動效果的Js代碼:

 1 function elementPosition(obj) {
 2     var curleft = 0, curtop = 0;
 3     if (obj.offsetParent) {
 4         curleft = obj.offsetLeft;
 5         curtop = obj.offsetTop;
 6         while (obj = obj.offsetParent) {
 7             curleft += obj.offsetLeft;
 8             curtop += obj.offsetTop;
 9         }
10     }
11     return { x: curleft, y: curtop };
12 }
13 
14 var repeatCount = 0;
15 var cTimeout;
16 var timeoutIntervals = new Array();
17 var timeoutIntervalSpeed;
18 function ScrollSmoothly(scrollPos, repeatTimes) {
19     if (repeatCount < repeatTimes) {
20         window.scrollBy(0, 50);
21     }
22     else {
23         repeatCount = 0;
24         clearTimeout(cTimeout);
25         return;
26     }
27     repeatCount++;
28     cTimeout = setTimeout("ScrollSmoothly('" + scrollPos + "','" + repeatTimes + "')", 10);
29 }
30 
31 function ScrollToControl(classname) {
32     var elem = document.getElementsByClassName(classname)[0];
33     var scrollPos = elementPosition(elem).y - 200; //部分頁面存在固定的Head部分
34     scrollPos = scrollPos - document.documentElement.scrollTop;
35     var remainder = scrollPos % 50;
36     var repeatTimes = (scrollPos - remainder) / 50;
37     ScrollSmoothly(scrollPos, repeatTimes);
38     window.scrollBy(0, remainder);
39 }
40 
41 ScrollToControl("page-inner");

3.執行,效果如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM