3

画像のリストを取得してスライドショーを作成するスライドショープラグインを作成しました。スライドショーは、上から100px + $(document).scrollTop()の位置にあります。

これは非常に単純で、非常にうまく機能します。誰かがページでcssズームを使用したときに、いくつかの問題が発生しています。ズームにより、トップポジションの計算がオフになります。誰かがこれを修正する/回避するための良い方法を知っていますか?

前もって感謝します!

4

1 に答える 1

7

私は同じ問題を抱えていて、位置を取得する必要がある要素をラップしている要素に CSS ズームが追加されている場合、jQuery .offset().top がウィンドウのスクロール位置に依存する値を返すことがわかりました。

したがって、このコンテキストではネイティブ JavaScript .offsetTopを使用しました。

$("#scrollDestination").get(i).offsetTop;

ただし、スクロールバーの位置を返すjQuery .scrollTop()とは異なり、これは親に相対的な位置を取得することに注意してください。そのため、おそらくいくつかの計算を行う必要がありますが、少なくとも、CSS ズームが含まれている場合は、要素の位置に対して一貫した戻り値が得られます。

于 2014-01-10T15:32:09.643 に答える