JQuery выяўляць каардынаты верхняй частцы старонкі пасля пракруткі

У мяне ёсць «кнопкі назад», што я хацеў бы прытрымлівацца загалоўка, пакуль не пракручваць міма пэўнай кропкі (так яна ў мяне абсалютна пазіцыянаваны, але хацеў бы яна пазіцыянавала «фіксаваных» пры прагортцы міма загалоўка).

Kinda like the 'GAMEHQ' section does here: http://scores.espn.go.com/mlb/preview?gameId=311027124

Любыя прапановы? Дзякуй!

3

2 адказы

Функцыя, якая дае інфармацыю аб тым, дзе вы знаходзіцеся ў старонцы scrollTop() . З яго дапамогай вы можаце выявіць, калі вы міма пэўнай кропкі, а затым змяніць CSS элемента каб зрабіць яго пазіцыя: фіксаваная , напрыклад.

Вось прыклад:

$(document).ready(function() {
    $(window).scroll(function() {
        if ($(window).scrollTop() >= 120) {
            $('#topThing').css('position', 'fixed');
        } else {
            $('#topThing').css('position', 'relative');
        }
    });
});

А вось JSFiddle паказвае, як гэта працуе.

9
дададзена

Гэты прыклад выкарыстоўвае JQuery, але можа быць зменены даволі лёгка. Гэтая функцыя павінна быць блізкая да таго, што вы хочаце. <�Код> 100 гэта колькасць пікселяў ўніз старонкі, вы хочаце змяніць клас вашага #nav. У вашым CSS вы тады хочаце, каб пераканацца, што вы мелі # nav.scrolling заяву для апрацоўкі змяненняў у пазіцыі: фіксаваны .

$(window).scroll(function(){
  if ($(this).scrollTop() > 100) {
    $("#nav").addClass("scrolling");
  }
});
0
дададзена