本網站上有很多帖子,我已閱讀,但沒有爲我工作,我不知道爲什麼。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');
}
CSS
#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)不管怎樣,一切我已經試過有相同的結果LTS。在PC上或Android上完美工作,但在iPhone上,菜單不會重新繪製並在頂部「卡住」,直到滾動停止並且手指從屏幕上移除。
有沒有解決這個問題?我正在閱讀的所有內容都表明,只有一種解決方案對我而言有任何改變。
奇怪的是,如果您的滾動備份(菜單已停留在頂部)並且您滾動過去,它會自動解除粘連(即使在滾動時)並且工作正常。
問題出現在「重新繪製」「固定」菜單的唯一時間。
我希望有一個解決方案。一切都表明,在iOS 8之後它已經修復了(並且我正在測試10+),但它不會在滾動時顯示菜單,直到你停下來放手。在iPhone 6和iPad Air 2上進行測試。safari和chrome的測試結果相同。
爲什麼不只給頭'position:fixed',然後給'
'使用JavaScript jQuery填充頁眉高度的頂部。它總是看起來很正常。如果你想添加一個類到它,如果窗口'scrollTop()'> 0基於它。 – Josh如果菜單總是應該在頁面的頂部,你所說的會起作用。在我的情況下,它不是,只是在你滾過去之後纔在頂端。 – DerekConlon
ok在窗口上滾動檢查,看看頁眉滾動頂部是否小於窗口滾動頂部,如果是的話,添加類固定和填充身體,如果不是從身體刪除類和填充。 – Josh