change colour of sitetitel/menu on black row + sticky row
-
Re: Change nav and logo text to white/black when scrolling
Hi!
I use the code of this thread (white text on .darkrow / .blackrow) to change the color of my sitetitel and menu when scrolling over dark background (via jQuery) and combined it with sticky rows (via css).
Have a look here: https://www.maxbrunnert.de/portfolio-neu/But I have two problems I don't get solved:
when the sitetitel/menu changed to white once, it does not change back to black
the underline color of my menu does not change. for the underlining of sitetitel it works...Could someone help me? I guess there is an error because of the combination
This is the code I use in custom CSS:
.white { color: white!important; } /* Sticky Row */ .sticky-row { position: sticky; top: 0; } /* Dark Row + Sticky Row */ .sticky-blackrow { background: transparent; position: sticky; top: 0; }And this in Custom HTML at bottom:
<!-- Dark Row --> <script> var offset = 50; var $blackRows; var $nav; window.laytheme.on("newpageshown", function(layoutObj, type, obj){ $blackRows = jQuery(".blackrow"); $nav = jQuery("nav a, .sitetitle span"); $nav.removeClass("white"); }); jQuery(document).on("scroll", function(){ $blackRows.each(function(){ var rect = this.getBoundingClientRect(); if(rect.top - offset < 0 && rect.bottom - offset > 0){ $nav.addClass("white"); return false; }else{ $nav.removeClass("white"); } }); }); </script> <!-- Dark Row + Sticky Row --> <script> var offset = 50; var $blackRows; var $nav; window.laytheme.on("newpageshown", function(layoutObj, type, obj){ $blackRows = jQuery(".sticky-blackrow"); $nav = jQuery("nav a, .sitetitle span"); $nav.removeClass("white"); }); jQuery(document).on("scroll", function(){ $blackRows.each(function(){ var rect = this.getBoundingClientRect(); if(rect.top - offset < 0 && rect.bottom - offset > 0){ $nav.addClass("white"); return false; }else{ $nav.removeClass("white"); } }); }); </script> -
i think its because its sticky no?
rect.top is always 0 after it sticks to the top
u need to somehow change the logic of the code and the conditions to make it work with sticky
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login