このサイトには私が読んだ記事がたくさんありますが、何も私のために働いていません。iPhone 6 - 位置:固定 - スクロールを停止するまで読み込まない
私は、ページの最上部に「スティック」は、あなたがそれとその逆を過ぎてスクロールすると、そのメニューを作成しようとしている
Javascriptを
$(document).ready(function(){
var top = $('#FloatingMenu').offset().top - parseFloat($('#FloatingMenu').css('marginTop').replace(/auto/,100))
document.addEventListener("scroll",Scroll,false);
document.addEventListener("gesturechange",Scroll,false);
function Scroll() {
var y = $(this).scrollTop();
if (y >= top) {
$('#FloatingMenu').addClass('fixed');
} else {
$('#FloatingMenu').removeClass('fixed');
}
(あなたが戻ってスクロールアップ時に付着し停止します)
私が再描画やってみたこと
#FloatingMenu.fixed {
position: fixed;
top: 0;
left: 0;
z-index: 1;
width: 100%;
background-color: black;
color: red;
}
#FloatingMenu {
background-color: red;
color: black;
width: 100%;
text-align: center;
}
が、私はどちらかの方法(私はiOSのChromeで停止させることはできません)「慣性」のスクロールを停止しようとしたCSSは、私が試したすべてのものが持っています同じレズlts。 PCやAndroidで完全に動作しますが、iPhone上ではメニューが再描画されず、スクロールが停止して指が画面から削除されるまでトップに「つまらない」状態になります。
修正プログラムはありますか?私が読んでいるすべては、一つの解決策が私のために何かを変えていることを示唆しています。
奇妙なことに、あなたのスクロールバックアップ(メニューはすでに上部に貼り付けられています)を過ぎてスクロールすると、スクロールしてもスムーズにスクロールして正常に機能します。
唯一の問題は、「固定」メニューを「再ペイント」するときです。
解決策があることを願っています。すべてのことは、iOS 8の後は固定されている(と私は10 +でテストしている)ことを示唆していますが、あなたが停止して放すまでスクロールしながらメニューを表示することはありません。 iPhone 6およびiPad Air 2でテストされました。サファリとクロムは、ボード全体で同じ結果を出しました。
ヘッダを 'position:fixed'とし、JavaScriptのjQueryを使って'
'にそのヘッダの高さのパディングトップを与えるのはなぜですか?常に正常に見えます。クラスを追加する場合は、ウィンドウ 'scrollTop()'> 0の場合はそれを基にします。 – Joshメニューが常にページの上部にあると思われる場合は、何を言っているのでしょうか。私の場合は、あなたがそれを越えてスクロールした後で、それは一番上にあります。 – DerekConlon
これで、ウィンドウのスクロールでヘッダーのスクロールの上部がウィンドウのスクロールの上部よりも小さいかどうかを確認します。クラスの固定とパディングを本文に追加します。 – Josh