私のページにはオーバーフローのある DIV があり、副スクロール方法として機能する 2 つのボタンを div の両側に配置しました。
左ボタンを押すと、次のスクリプトが実行され、完全に機能するようです。
function slideLeft() {
if ($("#divfieldWidgets").scrollLeft() == 0) {
$('#divScrollWidgetsLeft').animate({ opacity: 0.1 }, 250);
window.clearInterval(animationHandler);
}
$('#divfieldWidgets').animate({ scrollLeft: "-=100px" }, 250);
}
ただし、右にスクロールするときにDIVがいつ限界に達したかを判断する方法を見つけることができないようです。
$("#divfieldWidgets").scrollLeft() と $("#divfieldWidgets").width() に基づく計算が必要なのは確かですが、これら 2 つの値に対して実行したすべての算術計算はそうではありません。幅、最大値などとの関係を示す結果が得られます。
私が考えた最後のオプションが 1 つあります。それは、現在の scrollLeft 値を一時変数に格納し、新しい値を比較することです。変更がない場合は終了ですが、これを達成するためのよりクリーンな方法があるはずです。
何かご意見は?