2016-10-16 109 views
-3

請你幫我,我越來越瘋狂。我有一個有animate = fadeindown和視差滑塊背景的菜單,我最大的問題是當你向下滾動並向上滾動時,滑塊上的標題會跳躍(看一看(about.html(我們是標題 - 當你向上滾動標題跳躍我不知道爲什麼會發生)))。請幫助我,謝謝你的進步。DIV跳躍向上滾動時

+0

請:http://stackoverflow.com/help/mcve – Roope

+0

如果我的答案在下面有幫助,請將其標記爲接受的答案:) –

回答

2

在未來這將是一個更容易一點,如果你能在這裏計算器中粘貼有問題的代碼,但是這是一個非常簡單的問題,我可以理解爲什麼它可能是很難理解其中問題的根源。

這是一個普遍的問題,它的發生,因爲你的頭.mainmenu-wrapperregular flow的一部分,但只要你申請position: fixed(當用戶滾動一定距離),它落在了正常流動的。絕對或固定位置的元素被取出的正常流動,這樣你.rev_slider_wrapper是「跳」了頁面通過.mainmenu-wrapper當它成爲position: fixed填補留下的空間。來解決這個

的一種方法是應用一個margin-top等於固定.mainmenu-wrapper類(〜180像素上的桌面大小的設備觀察時)的高度,以.rev_slider_wrapper類只.mainmenu-wrapper具有position: fixed狀態。這樣,通過.mainmenu-wrapper留下的垂直空間,當它離開正常流動(要麼是position: fixedabsolute)將被安置在剩餘的正常流動的元素。

你可以使用這樣的事情在你的CSS:

在上面選擇最重要的一點是+。這是兄弟選擇,僅適用樣式時.mainmenu-wrapper有一類.stricky-fixed(滾動過去的某一點時)是我剛剛做的是非常的事情在Chrome的.rev_slider_wrapper

同級開發工具,雖然它阻止了文本跳躍,但我認爲您需要花一些時間或許玩轉換,以確保margin-top的應用程序更加優雅。

注意,這個解決方案是最簡單快捷,只要需要的代碼最低金額爲關注。但是,您可能希望與margin-top的特性可將特定類.rev_slider_wrapper具有相同的JavaScript/jQuery的是處理.stricky-fixed類的應用。無論哪種方式,結果都是一樣的。

+0

我測試了您的代碼,但問題是當我滾動時出現白色菜單和滑塊之間的空間。 Pease help – jezz

+0

function stickyHeader(){ \t if($('。stricky')。length){ \t \t var strickyScrollPos = 0; \t \t如果($(窗口).scrollTop()> strickyScrollPos){ \t \t \t $( 'stricky。 ')removeClass(' 淡入動畫'); \t \t $('。stricky')。addClass('stricky-fixed fadeInDown animated'); ('。scroll-to-top')。fadeIn(500); \t \t} \t \t否則如果($(本).scrollTop()<= strickyScrollPos){ \t \t \t $( 'stricky。 ')removeClass(' stricky固定fadeInDown動畫'); ('。stricky')。addClass('slideIn animated'); ('。scroll-to-top')。fadeOut(500); \t \t} \t}; } – jezz

+0

是的,我想如果你已經實現了我說的正確的話,跳躍是固定的,但你可以看到後面的空白。這是因爲您有一個關鍵幀動畫,並且在動畫完成之前可以看到空白區域。在不更改動畫的情況下(滾動備份時有點奇怪),您可以用padding-top替換margin-top,並將.rev_slider_wrapper上的背景色設置爲#151515(與標題相同)。這樣的空間仍然存在,但它現在#151515而不是白色。 –