"next"リンクをクリックするたびに.next()画像に.scrollLeft()するdivが必要です。div内の.scrollLeft()
文書のスクロール(jsfiddle) があればうまく動作しますが、divをスクロールして欲しいのであれば問題ありません。 (jsfiddle)
"next"リンクをクリックするたびに.next()画像に.scrollLeft()するdivが必要です。div内の.scrollLeft()
文書のスクロール(jsfiddle) があればうまく動作しますが、divをスクロールして欲しいのであれば問題ありません。 (jsfiddle)
はrelative to the documentであることに注意してください。これは、divが既にどこにスクロールされているかによって異なります。
私が代わりに行うための最善のことがわからないんだけど(DOM位置プロパティが毛深いと欠けているものがあり、それはシンプルであるべき)が、動作するものではなく、.position()
を使用し、内のオフセット親を確立することですスクロール可能な要素(すなわち、相対的に配置され、画像を含む要素)。あなたのコードに
変更:
$("#slides").animate({scrollLeft: $($current).position().left}, 500);
<div id="slides">
<div class="offset-parent"> <!-- added -->
<img src="http://www.petwebsite.com/uploadpics/ginger-cat.jpg" class="images" alt="cat">
...
</div>
</div>
.offset-parent {
position: relative;
}
offset()
はdiv
がすでにスクロールさ量が含まれていません。あなたはそれを説明する必要があります。
the jsfiddleを参照してください。
jQueryメソッド呼び出しを行うのではなく、配列内のインデックスに基づいてスクロール操作を行うようにしました。これにより、(より少し速く)実行されます。
あなたのソリューションは、スクロールのために左の左に親を追加するだけで、それは完全に機能します! –
はぁため
もう一つの良いプラグイン。あなたはHTMLとCSSを変更するだけでそれを修正し、Javascriptを変更するだけで修正しました。私が推測する猫の皮膚には複数の方法があります。 –
いいえ、私は '.offset()'の代わりに '.position()'も使いました。 –
ああ、そうした。私はちょうどすぐに現実を見た。 –