我在這個方程中遇到了一些麻煩。如何改進這個JS Parallax類型的數學方程?
本質上,當光標在邊緣200px內時,我想讓畫板(網格)div將自己定位到瀏覽器的邊緣。
這可以很容易地通過觀察鼠標座標設置位置來完成,但我希望它是流暢的。 I.E.如果鼠標距離左邊緣爲199px,那麼lVal應緩慢遞減,直到畫板對象邊緣與鍍鉻邊緣內嵌。
目前,我有這個工作的左邊緣,但我無法弄清楚如何做到這一點,而不會造成輕微的流行。
請查看下面的示例。
http://dev.nimmbl.com/sampler/#
winSize[] = document window size (y,x)
2940 = width of artboard object
function moveArtboard(e){
var t = docbody.offset(), space = 400, lVal, tVal;
lVal = Math.round((space/2) + (e.pageX - t.left) * (winSize[1] - (2940 + space))/winSize[1]);
tVal = Math.round((space/2) + (e.pageY - t.top) * (winSize[0] - (1200 + space))/winSize[0]);
if(lVal >= 0){
artboard.obj.css({
"left": 0,
"top": tVal
});
} else if(lVal + -winSize[1] <= -2940){
artboard.obj.css({
"left": "auto",
"right": 0,
"top": tVal
});
} else {
artboard.obj.css({
"left": lVal,
"top": tVal
});
}
}
我覺得它是這樣的。有一個看不見的框架,坐落在窗口內,勝率爲80%。框架應居中,框架和邊緣之間的距離是應該用作乘數的值。我的目標是顯示左側或最右側的框,而不需要用戶一直滾動到瀏覽器鑲邊的邊緣。 – chris 2011-04-07 18:03:28