Changing sticky nav color based on div below's color

前端 未结 2 1097
萌比男神i
萌比男神i 2021-01-13 16:51

Basically on my site I have a sticky nav that has a transparent background. Below that I have light or dark colored content divs.

What I\'m trying to achieve is as y

2条回答
  •  说谎
    说谎 (楼主)
    2021-01-13 17:29

    Fiddle working:

    http://jsfiddle.net/bbazcyc8/1/

    var stickyOffset = $("#sticky").offset();
    var $contentDivs = $(".content");
    $(document).scroll(function() {
        $contentDivs.each(function(k) {
            var _thisOffset = $(this).offset();
            var _actPosition = _thisOffset.top - $(window).scrollTop();
            if (_actPosition < stickyOffset.top && _actPosition + $(this).height() > 0) {
                $("#current").html("Current div under sticky is: " + $(this).attr("class"));
                $("#sticky").removeClass("light dark").addClass($(this).hasClass("light") ? "light" : "dark");
                return false;
            }
        });
    });
    
    
    Menu

提交回复
热议问题