Artykuły:

  • data publikacji: 28.12.2009

    Pojawiająca się belka za pomocą jQuery

    kategoria: Skrypty client-side, Tutoriale autor: palmiak

    Pojawiająca się belka za pomocą jQuery

    Dziś pokażę Wam dość przydatny trick, który podpatrzyłem korzystając z Magento. Otóż gdy przeglądamy jakieś długie strony i zjedziemy na tyle nisko, że znika nam z oczu górne menu pojawia się belka z kilkoma najważniejszymi opcjami.

    demopobierz

    Było to na tyle przydatne, że na początku nawet nie zwróciłem uwagi na tą belkę - po prostu zawsze była tam kiedy jej potrzebowałem.

    To, że zostało to użyte w panelu administracyjnymi wcale nie znaczy, że nie znajdzie to użycia na normalnych stronach. Mozna przecież na tej belce umieścić dowolne informacje takie jak np. możliwość przypomnienia użytkownikowi, że jeśli podoba mu się ta strona niech zasubskrybuje rss lub uproszczone menu strony.

    xhtml i css

    Do naszego przykładu użyjemy następującej strony. Jak widać jest to prostu tabelka oraz guzik 'dodaj produkt'. Dopiszemy do niej naszą belkę na której będzie zawsze można zobaczyć przycisk 'dodaj produkt':

    <div id="menu">
            <div class="wrap"><a href="#"><img src="dodaj.png" alt="" /></a></div>
    </div>

    Oczywiście u każdego może to wyglądać troszkę inaczej. Ostylujmy to teraz:

    #menu {
            width:100%;
            background:#ffef87;
            position:fixed;
            top:0;
            display:none;
    }

    #menu .wrap {
            text-align:right;
    }

    Najważniejsze w tym jest tak naprawdę display:none, które ukrywa belkę (w czasie stylowanie warto to sobie wykomentować) oraz position:fixed; top:0; które spowodują, że belka zawsze będzie przyklejona do górnej krawędzi ekranu (nie działa to w IE6, jednak dość łatwo to można ominąć, np. tutaj).

    Nasz właściwy skrypt

    Skrypt musi robić dwie rzeczy:

    • sprawdzać ile pikseli jesteśmy od górnej krawędzi strony
    • na podstawie tego wyniku pokazać lub ukryć belkę

    Napiszmy więc sobie funkcyjkę

    function show_bar(identyfikator, wielkosc){

            var scroll_size = $(window).scrollTop();

            $(window).scroll(function () {
                    scroll_size = $(window).scrollTop();
                    if(scroll_size>wielkosc) {
                            $(identyfikator).fadeIn('fast');
                    } else {
                            $(identyfikator).fadeOut('fast');
                    }
            });
    }

    Zmiennej scroll_size przypisujemy odległość od górnej krawędzi strony.

    Następnie za każdy przesunięciem strony ($(window).scroll()) przeliczamy tą wielkość i sprawdzamy czy przekroczyła ona ustalony przez nas limit - jeżeli tak to pokaże nam belkę.

    Teraz pozostaje to wywołać:

    $(document).ready(function(){
        var bar = show_bar("#menu", 80);
    });

    Jako pierwszą wartość podajmy id elementu który ma się pokazywać. Drugi to wysokość od której ma się pokazywać.

    Gdybyście mieli jakieś problemy zerknijcie na źródło dema.

    Podsumowanie

    I już. Uzyskaliśmy naprawdę miły i przydatny gadżecik za pomocą kilku linijek jQuery.

    Udostępnij ten artykuł:
    • Print
    • Digg
    • del.icio.us
    • Facebook
    • Mixx
    • Google Bookmarks
    • Gwar
    • RSS
    • Technorati
    • Twitter
    • Wykop

    Tagi:
  • This website uses IntenseDebate comments, but they are not currently loaded because either your browser doesn't support JavaScript, or they didn't load fast enough.

    5 Responses to “Pojawiająca się belka za pomocą jQuery”

    1. albatros pisze:

      W jaki sposób można wyświetlić informację o korzystaniu ze złej przeglądarki (IE ;) ) Coś w tym stylu: http://wordpress.org/extend/plugins/ie-warning/ tylko chciałbym ograniczyć korzystanie ze wtyczek ;)

    2. albatros pisze:

      W jaki sposób można wyświetlić informację o korzystaniu ze złej przeglądarki (IE ;) ) Coś w tym stylu: http://wordpress.org/extend/plugins/ie-warning/ tylko chciałbym ograniczyć korzystanie ze wtyczek ;)

    3. albatros pisze:

      W jaki sposób można wyświetlić informację o korzystaniu ze złej przeglądarki (IE ;) ) Coś w tym stylu: http://wordpress.org/extend/plugins/ie-warning/ tylko chciałbym ograniczyć korzystanie ze wtyczek ;)

    4. Kartofelek pisze:

      http://docs.jquery.com/Utilities/jQuery.browser

      $(document).ready(function(){
      if($.browser.msie){
      var bar = show_bar("#menu", 80);
      });
      });

    5. Michał pisze:

      A jak można ukazać taką belkę wysuwającą się z dołu strony do momentu przesunięcia strony na sam dół?

    Leave a Reply

Komentarze

Kategorie

Top 10

  • CMSy Artykuły dotyczące różnego rodzaju systemów zarządzania treścią CMS.
  • Flash Podstawowe informacje pomocne przy tworzeniu animacji w Adobe Flash.
  • Fotografia Samouczki dotyczące nie tylko robienia zdjęć ale też ich cyfrowej obróbki.
  • Grafika Ogólnie pojęta grafika komputerowa, od inspiracji, po tworzenie layoutów oraz mniejszych form graficznych.
  • Inne tutoriale wordpressowe Wszystkie inne zagadnienia dotyczące WordPressa.
  • Inspiracje Inspirujące materiały graficzne z dziedziny projektowania stron www, projektów DTP, digital painting, itp.
  • Obróbka zdjęć Techniki retuszu fotografii cyfrowych.
  • Rysunek Tworzenie rysowanych ilustracji w Adobe Photoshop.
  • Skóry do Wordpressa Darmowe oraz płatne – najlepsze skóry do WordPressa.
  • Skrypty client-side
  • Skrypty server-side
  • Tutoriale
  • Webdesign Tutoriale z zakresu projektowania stron www i grafiki użytkowej na rzecz internetu.
  • Wieczór z Open Source
  • Wordpress Ulubieniec naszej publiczności CMS WordPress: nowości, tricki, wtyczki, skóry i wszystko to co może przydać się przy korzystaniu z tego systemu.
  • Wtyczki do Wordpressa Recenzje oraz instrukcje najbardziej popularnych i najbardziej niezbędnych pluginów do WordPressa.
  • XHTML/CSS Ciekawostki z dziedziny kodowania stron www: XHTML, CSS, jQuery.

Najnowsze newsy

Wieczór z Open Source 2010

Jak co roku WSINF organizuje konferencję Wieczór z Open Source.
Chciałbym zaprosić was na tegoroczna konferencję Wieczór z Open Source 2010! Czytaj dalej

Grafart.org i WACOM zapraszają na konkursy!

Witam!

Myślę, że czas najwyższy nadmienić, że za niedługi czas zostanie zorganizowany pierwszy z trzech konkursów, w których główną nagrodą będą tablety firmy WACOM!
Za miejsca drugie oraz trzecie nagrodami będą kubki i koszulki firmy WACOM oraz magazyny graficzne PSD PHOTOSHOP oraz COMPUTERARTS.
Czytaj dalej

Zapraszamy na forum graficzne Graffika.pl

Każda osoba interesująca się grafiką komputerową ma czasami ochotę porozmawiać o swoich pracach, posłuchać rad, krytyki i pochwał innych osób. Idealnym miejscem na realizowanie takich potrzeb jest forum graficzne Graffika.pl.
Czytaj dalej