📄 xwinscrollto.js
字号:
// xWinScrollTo r3, Copyright 2003-2007 Michael Foster (Cross-Browser.com)
// Part of X, a Cross-Browser Javascript Library, Distributed under the terms of the GNU LGPL
var xWinScrollWin = null;
function xWinScrollTo(win,x,y,uTime) {
var e = win;
if (!e.timeout) e.timeout = 25;
var st = xScrollTop(e, 1);
var sl = xScrollLeft(e, 1);
e.xTarget = x; e.yTarget = y; e.slideTime = uTime; e.stop = false;
e.yA = e.yTarget - st;
e.xA = e.xTarget - sl; // A = distance
if (e.slideLinear) e.B = 1/e.slideTime;
else e.B = Math.PI / (2 * e.slideTime); // B = period
e.yD = st;
e.xD = sl; // D = initial position
var d = new Date(); e.C = d.getTime();
if (!e.moving) {
xWinScrollWin = e;
_xWinScrollTo();
}
}
function _xWinScrollTo() {
var e = xWinScrollWin || window;
var now, s, t, newY, newX;
now = new Date();
t = now.getTime() - e.C;
if (e.stop) { e.moving = false; }
else if (t < e.slideTime) {
setTimeout("_xWinScrollTo()", e.timeout);
s = e.B * t;
if (!e.slideLinear) s = Math.sin(s);
// if (e.slideLinear) s = e.B * t;
// else s = Math.sin(e.B * t);
newX = Math.round(e.xA * s + e.xD);
newY = Math.round(e.yA * s + e.yD);
e.scrollTo(newX, newY);
e.moving = true;
}
else {
e.scrollTo(e.xTarget, e.yTarget);
xWinScrollWin = null;
e.moving = false;
if (e.onslideend) e.onslideend();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -