PageSourceSearch

https://wolfefarmsandland.com/inc/templates/current/wolfesre/extra/smooth-srcoller.js

js wolfefarmsandland.com collected 2026-10-10 02:02:43 UTC 1,619 bytes, 45 lines download raw bytes

1function smoothScroll(eID) {
2	var scrollspeed = 75;
3    var startY = currentYPosition();
4    var stopY = elmYPosition(eID);
5    var distance = stopY > startY ? stopY - startY : startY - stopY;
6    if (distance < 100) {
7        scrollTo(0, stopY); return;
8    }
9    var speed = Math.round(distance / 100);
10    if (speed >= 20) speed = 20;
11    var step = Math.round(distance / scrollspeed);
12    var leapY = stopY > startY ? startY + step : startY - step;
13    var timer = 0;
14    if (stopY > startY) {
15        for ( var i=startY; i<stopY; i+=step ) {
16            setTimeout("window.scrollTo(0, "+leapY+")", timer * speed);
17            leapY += step; if (leapY > stopY) leapY = stopY; timer++;
18        } return;
19    }
20    for ( var i=startY; i>stopY; i-=step ) {
21        setTimeout("window.scrollTo(0, "+leapY+")", timer * speed);
22        leapY -= step; if (leapY < stopY) leapY = stopY; timer++;
23    }
24}
25
26function currentYPosition() {
27    // Firefox, Chrome, Opera, Safari
28    if (self.pageYOffset) return self.pageYOffset;
29    // Internet Explorer 6 - standards mode
30    if (document.documentElement && document.documentElement.scrollTop)
31        return document.documentElement.scrollTop;
32    // Internet Explorer 6, 7 and 8
33    if (document.body.scrollTop) return document.body.scrollTop;
34    return 0;
35}
36
37function elmYPosition(eID) {
38    var elm = document.getElementById(eID);
39    var y = elm.offsetTop;
40    var node = elm;
41    while (node.offsetParent && node.offsetParent != document.body) {
42        node = node.offsetParent;
43        y += node.offsetTop;
44    } return y;
45}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.