1 framework pro javascript jquery + knihovna funkcí usnadňujících práci v javascriptu Možnosti: o manipulace s prvky HTML o změna vlastností objektů o...
+ • knihovna funkcí usnadňujících práci v javascriptu Možnosti: o manipulace s prvky HTML o změna vlastností objektů o podpora události o práce s CSS, podpora selektorů o efekty, animace o velké množství dostupných knihoven
HTML = obsah CSS = vzhled jQUERY = akce
Návrh a tvorba WWW stránek
jQuery − proč používat • • • • • • • •
jednoduché a rychlé rozšířitelné zjednodušuje práci v javascriptu stačí základní znalosti HTML a CSS (i bez javascriptu) nezávislé na prohlížeči ani jiných technologiích neřešíte rozdílnou podporu JS v prohlížečích hotová řešení dostupná dokumentace
• podporováno IBM, Google, Microsoft, …
Návrh a tvorba WWW stránek
jQuery − jak zprovoznit • stáhnout <script type="text/javascript" src="jscripts/jquery.js">
jQuery − syntaxe jQuery = dynamická změna vzhledu, obsahu nebo chování objektu (HTML elementu) $(selector).action() $("p").hide() $(".test").hide() $("#test").hide() $(this).hide()
Návrh a tvorba WWW stránek
jQuery − jak používat • vlastní skripty píšeme do externího souboru, např. <script type="text/javascript" src="js/zkouska.js">
• javascripty je vhodné provádět až po načtení dokumentu $(document).ready(function(){ // vlastní kód }); $(function(){ // vlastní kód });
Návrh a tvorba WWW stránek
jQuery − selektory • specifikují požadované HTML elementy • lze využít id, class, type, atribut, hodnotu atd. • selektory vždy začínají $ a jsou v () $(document).ready(function(){ $("p") $("button").click(function(){ $("#test") $("p").hide(); $(".test") }); }); $(this) $("[href]") $("a[target='_blank']") $("tr:even"), $("tr:odd")
Návrh a tvorba WWW stránek
jQuery − události
• syntaxe událostí $("div").click(function(){ $(this).hide(); }); $("input").focus(function(){ $(this).css("background-color","#cccccc"); });
Návrh a tvorba WWW stránek
jQuery − efekty • Hide, Show, Toggle, SlideDown, SlideUp, SlideToggle, FadeIn(Out) • lze použít i parametr v ms nebo „slow“, „fast“
jQuery − efekty − animace • animace vyžadují zadání povinných parametrů − CSS vlastností • pro pohyb je potřeba nastavit objektu position (relative/absolute) $(selektor).animate({parametry},speed,callback); $("button").click(function(){ $(".box").animate({left:'250px'}); });
• lze nastavit i více vlastností $("button").click(function(){ $(".box").animate({left:'250px', marginTop:'250px‚ height:'+=150px'}); });
Návrh a tvorba WWW stránek
jQuery − efekty − animace • lze použít předdefinované hodnoty hide, show toggle $("button").click(function(){ $("div").animate({ height:'toggle' }); });
jQuery − manipulace s HTML − get • prostřednictvím jQuery lze přistupovat k HTML elementům a jejich atributům • metoda text() − textový obsah elementu $("#btn1").click(function(){ alert("Text: " + $("#test").text()); });
• metoda html() − HTML obsah elementu $("#btn2").click(function(){ alert("HTML: " + $("#test").html()); });
This is bold text in a paragraph.
Návrh a tvorba WWW stránek
jQuery − manipulace s HTML − get • metoda val() − hodnota formulářového pole $("#btn1").click(function(){ alert("Value: " + $("#test").val()); });
• metoda attr() − hodnota atributu $("button").click(function(){ alert($("#test").attr("id")); });
Návrh a tvorba WWW stránek
jQuery − manipulace s HTML − set • prostřednictvím jQuery lze přistupovat k HTML elementům a jejich atributům • metoda text() − textový obsah elementu $("#btn1").click(function(){ $("#test").text("Hello"); });
• metoda html() − HTML obsah elementu $("#btn2").click(function(){ $("#test").html("Hello")); });
This is bold text in a paragraph.
Návrh a tvorba WWW stránek
jQuery − manipulace s HTML − set • metoda val() − hodnota formulářového pole $("#btn1").click(function(){ alert("Value: " + $("#name").val("your name")); });
• metoda attr() − hodnota atributu $("button").click(function(){ alert("Odkaz nastaven"); $("#link").attr("href","http://www.upce.cz"); });
Návrh a tvorba WWW stránek
jQuery − manipulace s HTML − přidávání • metody pro přidávání nového obsahu append() − na konec elementu prepend() − na začátek elementu after() − za element before() − před element $("#text").append("Some appended text."); $("#text").prepend("Some prepended text."); $("#text").after("Some text after"); $("#text").before("Some text before");
Návrh a tvorba WWW stránek
jQuery − manipulace s HTML − odstraňování • metody pro odstraňování obsahu remove() − odstraní celý element empty() − odstraní obsah elementu (potomky) $("#text").remove(); $("#text").empty();
pomocí parametru lze filtrovat elementy, které budou smazány $("p").remove(".italic");
Návrh a tvorba WWW stránek
jQuery − manipulace s CSS • metody pro změnu CSS addClass() − přidáva třídu elementu removeClass() − ruší třídu elementu toggleClass() − střídavě přidává/ruší třídu elementu css() − vrací/nastaví třídu elementu $("button1").click(function(){ $("h1,h2,p").addClass("blue"); $("div").addClass("important blue"); }); $("button2").click(function(){ $("h1,h2,p").removeClass("blue"); }); $("button3").click(function(){ $("h1,h2,p").toggleClass("blue"); });
Návrh a tvorba WWW stránek
jQuery − manipulace s CSS − css() • slouží pro zjištění (nastavení) hodnoty CSS $("p").css("background-color"); $("p").css("background-color","yellow"); $("p").css({"background-color":"yellow", "font-size":"200%"});