2016-12-02 3 views
0

Ich möchte ein div angezeigt werden, wenn ich über ein bestimmtes div blättern, aber es ausblenden möchten, wenn Sie div vorbei scrollen.Zeige div, wenn Fenster gleich div ist, aber verberge, wenn das Fenster das div passiert

ich war in der Lage, es zu machen, so dass, wenn das Fenster die Spitze eines div erreicht meine Taste zeigen: Example Fiddle.

ich diese Lösung für einen Höhenbereich sah aber nicht replizieren konnte für diese arbeiten : Only show div when in the middle of the page

Wie kann ich das div ausblenden, wenn Sie über das rote div scrollen?

Antwort

1

Fügen Sie Ihrer if -Anweisung eine Prüfung hinzu, die überprüft, ob die Schaltfläche kleiner als die oberste Position des div ist, auf dem sie verschwinden soll.

$(window).scroll(function() { 
    if($(this).scrollTop() >= $('.separator').offset().top && $(this).scrollTop() <= $('#header').offset().top) { 
     $('#button').show();   // Show the arrow 
    } else { 
     $('#button').hide();   // Hide the arrow 
    } 
}); 

https://jsfiddle.net/vo7Ley5e/2/

+1

perfekt gearbeitet. Als ich versuchte zu replizieren, benutzte ich das gleiche Element #header für beide Teile. Die Benutzung von .separator hat funktioniert! – cgrouge

Verwandte Themen