2

どうしたらいいのかわからない問題に悩んでいます。

基本的に、私は ScrollToFixed jQuery プラグインを統合しており、制限を計算するために使用します

jQuery( document ).height() - jQuery( \'body\').offset().top

また

jQuery( 'body' ).height()

問題は、すべてのブラウザーで同じように機能するわけではないということです。Chrome で実装を開発しましたが、他のブラウザーでテストしたところ、めちゃくちゃでした。値をコンソールに出力したところ、高さが 600px 違いました。

現在、私のスクリプトはクライアントによって複数の Web サイトで使用されるため、普遍的な解決策を見つける必要があります。

私を助けてもらえますか、これは可能ですか?

ありがとうございました。

4

1 に答える 1

0

まず、 css を正規化してください。これにより、すべてのブラウザーで同じになります。

次に$(window).height()、ブラウザ ウィンドウの高さを取得するために使用します。


更新:scrollToFixed似たような名前のプラグインが複数あるため、プラグインを探す必要がありました。ここで見つけました

ドキュメントと制限オプションの定義を見ると

要素がページを (絶対的に) 上方向にスクロールし始める垂直スクロール位置。

したがって、作成者が「非常に完全な例」デモで行うように、その位置で要素をターゲットにするだけです。

limit: $('.footer').offset().top - $('#summary').outerHeight(true) - 10;

明らかに一番.footer下のフッターです。上部のオフセットを取得し、スクロール ウィンドウの高さを差し引いて、小さなマージンを加えます (結果フレームを広げて、概要スクロール ウィンドウを表示します)。

于 2013-03-09T17:53:42.713 に答える