0
我有一個使用mousewheel jQuery插件的水平滾動網站。滾動工作,但我想將每個「文章」捕捉到文檔的左側,以便一旦停止滾動時它不會保持中途切斷。水平滾動後jQuery捕捉
的標記我到目前爲止有:
CSS
#viewport {
width:100%;
height:100%;
overflow: hidden;
}
#stage {
height:100%;
width:400%;
position: absolute;
display:block;
overflow: hidden;
}
#stage article {
width:25%;
height:100%;
position: relative;
display:block;
float:left;
}
HTML
<div id="viewport">
<section id="stage" class="clearfix">
<article>
This is the block that should snap to the left once scrolling is stopped.
</article>
<article>
This is the block that should snap to the left once scrolling is stopped.
</article>
<article>
This is the block that should snap to the left once scrolling is stopped.
</article>
<article>
This is the block that should snap to the left once scrolling is stopped.
</article>
</section>
</div>
JQUERY
$(function() {
$("html, body").mousewheel(function(event, delta) {
this.scrollLeft -= (delta * 30);
event.preventDefault();
});
});
我嘗試使用這個腳本不會有好結果。看起來百分比阻止瞭解前一個/下一個位置。
https://stackoverflow.com/a/8170667
在此先感謝。
大衛,按位置我的意思是前面或後面的文章。我正在測試的腳本會檢測第一篇文章離當前的距離,然後計算到scrollLeft的距離。這沒有用。我會嘗試你的建議。謝謝! – JessyR22
然後,如果您的文章具有相同的寬度,那麼您可以確定您是否處於其寬度的倍數處,並朝向最接近的倍數移動。 所以當((scrollLeft%articleWidth)== 0)你排隊在一篇文章(假設第一篇文章排隊在零) – David
大衛,我測試你的代碼,但返回scrollLeft()不是一個函數。我修復了拼寫錯誤,但仍然沒有骰子。我需要的只是,如果x文章是可見的,向左滾動左邊,直到它剩下0.是不是認爲這將是複雜的。 – JessyR22