Avatar
Jan Demel
Redaktor
Avatar
Jan Demel:1.2.2014 11:10

Zdravím. Dnes jsem se chtěl kvůli jedné zakázky podívat trochu na jQuery no ale narazil jsem na takový pro mě celkem nepochopitelný problém. Díval jsem se na Youtube na tutoriály, jak udělat smooth scroll a tady na Devbook. Bezproblému mi fungoval tenhle kód

$(document).ready(function(){
    $("#menu a").click(function(){
        var id = $(this).attr("href");
        $("body").stop().animate({scrollTop: $(id).offset().top}, "slow");
        return false;
    });
});

Ale když už jsem chtěl přidat efekt animace, tak to nefungovalo. :(

$(document).ready(function(){
    $("#menu a").click(function(){
        var id = $(this).attr("href");

        $("body").stop().animate({scrollTop: $(id).offset().top}, "slow", "easeInOutExpo");
        return false;
    });
});

Poradili by jste mi prosím, jak na to ? :)

Odpovědět 1.2.2014 11:10
To co se zdá být nemožné, je vždy možné.
Avatar
Filip Pýrek
Redaktor
Avatar
Odpovídá na Jan Demel
Filip Pýrek:1.2.2014 11:24

A máš vloženou jQuery UI?

Nahoru Odpovědět 1.2.2014 11:24
„The best way to predict the future is to invent it.“ — Alan Kay
Avatar
Honza Bittner
Redaktor
Avatar
Odpovídá na Jan Demel
Honza Bittner:1.2.2014 11:31

Efekty jsou, jak jsem psal v článku, součástí jQuery UI, tudíž to musíš mít.

Dále je lepší e.preventDefault() místo return false.
Je to tím, že return false má daleko více účinků, o kterých nevíš a mohly by ti někdy škodit...

Koukni na http://stackoverflow.com/…return-false

Nahoru Odpovědět 1.2.2014 11:31
Student FIT ČVUT. Followuj mě na https://twitter.com/tenhobi a ptej se na https://github.com/HoBi/ama.
Avatar
Jan Demel
Redaktor
Avatar
Odpovídá na Filip Pýrek
Jan Demel:1.2.2014 11:31

No mám vloženo tohle

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js" type="text/javascript"></script>
Nahoru Odpovědět 1.2.2014 11:31
To co se zdá být nemožné, je vždy možné.
Avatar
Filip Pýrek
Redaktor
Avatar
Odpovídá na Jan Demel
Filip Pýrek:1.2.2014 11:35
<script src="http://code.jquery.com/jquery-1.10.2.js" type="text/javascript"></script>
<script src="http://code.jquery.com/ui/1.10.4/jquery-ui.js" type="text/javascript"></script>

Zkus tohle

Nahoru Odpovědět 1.2.2014 11:35
„The best way to predict the future is to invent it.“ — Alan Kay
Avatar
Jan Demel
Redaktor
Avatar
Odpovídá na Filip Pýrek
Jan Demel:1.2.2014 11:39

Vypadá to, že už to funguje :) Děkuji :)

Nahoru Odpovědět 1.2.2014 11:39
To co se zdá být nemožné, je vždy možné.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.