jQuery on JavaSript-kirjasto joka luo "helpon" tavan JavaScript-ohjelmien tekemiseen. Ennen jQuery:n käyttämistä olisi hyvä osata seuraavista perusasiat:
Tutustu linkin sisältöön.
Pysy ajan tasalla seuraamalla JQuery-organisaation sivustoa
<head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"> </script> .. .. </head>
Tai kirjasto voidaan liittää JQuery.com yhteisöstä omalle tietokoneelle/www.palvelimelle ladatulla tiedostolla. Sivustolla on ladattavissa (kopioitavissa) kaksi erilaista versiota compressed - pakattu tai uncompessed pakkaamaton. Pakkaamattomasta voi tutkia scriptien toimintaa. Alla esimerkiksi linkitetään script-kirjasto koodaukseen samasta kansiosta jossa www-sivun koodaus sijaitsee:
<head> <script src="jquery-3.5.1.min.js"></script> .. .. </head>
Testi-esimerkki, kaikki p-elementit on poistettavissa näkyvistä klikkaamalla:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("p").click(function(){
$(this).hide();
});
});
</script>
</head>
<body>
<p> Nämä tekstit on klikkailtavissa pois. Klikkaa tätä ! </p>
<p> Klikkaa pois </p>
<p> Klikkaa tämkin pois </p>
</body>
</html>
Tulos www-sivulla:
<script>
$(document).ready(function(){
$("p").click(function(){
$(this).hide();
});
});
</script>
Selitykset:
$("p").click(function()
- klikattaessa p-elementtejä voidaan kaikki p-elementit poistaa näkyvistä
(lainnausmerkkien välissä on html-elementin valitsin eli selector)
$(this).hide();
- sulkee eli "piilottaa" hide() funktiolla klikatun p-elementin
Valitsin tarkoittaa yleisesti HTML-elementtiä johon script-toiminto kohdistetaan
Esimerkkejä valitsimista, valitsin on sinisellä alkuosassa:
$(this)
.hide()
- piilottaa nykyisen elementin
$("p")
.hide()
- piilottaa p -elementin
$(".teksti")
.hide()
- piilottaa class="teksti" tunnisteisen elementin
$("#otsikko")
.hide()
- piilottaa id="otsikko" tunnisteisen elementin
Valitsimena voi toimia HTML-elementti tai elementti jolla on class- tai id-tunniste.
Huomaa!
JQuery:ä käyttäessä
HTML-elementillä ei voi olla kahta tai useampaa ID-valitsinta. CSS-ohjeen ja JQuery:n voi liittää samalla id- tai class-tunnisteella
HTML-elementiin.
Taulukkoon on koottu muutamia. Klikkaamalla vasemman sarakkeen
valitsinta sivulla siirrytään esimerkin kohdalle.
HUOM !
Kaikissa taulukon esimerkeissä on lisättävä head-elementtiin jQuery- linkki:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js">
</script>
Valitsin | Merkitys www-sivulla |
---|---|
$("*") | Valitsee kaikki elementit |
$(this) | Valitsee nykyisen HTML-elementin |
$("p.teksti") | Valitsee p-elementin jonka tunniste on class="teksti", yleensä CSS-muotoiltu |
$("p:first") | Valitsee ensimmäisen p-elementin |
$("ul li:first") | Valitsee ensimmäisen listan eli ul-elementin ja tämän listan ensimmäisen alkion eli li-elementin |
$("ul li:first-child") | Valitsee www-sivun kaikista listoista (ul) ensimmäisen li-elementin |
$("[href]") | Valitsee kaikki elementit joissa on href-määrite ("linkki jonnekin") |
$("a[target='_blank']") | Valitsee kaikki linkki-elementit joissa avausmäärite selaimeen ON target='_blank' |
$("a[target!='_blank']") | Valitsee kaikki linkki-elementit joiden avausmäärite EI OLE target='_blank' |
$(":button") | Valitsee kaikki button-määritteiset painikkeet |
$("tr:even") | Valitsee taulukosta ensimmäisestä rivistä aloittaen joka toisen (even) rivin (tr) |
$("tr:odd") | Valitsee taulukosta toisesta rivistä aloittaen joka toisen (even) rivin (tr) |
Painikkeen klikkaus poistaa kaikki HTML-elementit. Esimerkissä HTML-elementeihin on liitetty CSS-ohjeet.
Esimerkki koodauksessa ei ole Button-elementtillä CSS-ohjetta (painikkeen tekstiväri).
<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script> $(document).ready(function(){ $("button").click(function(){ $("*").hide(); }); }); </script> </head> <body> <h2>Kaikki www-sivun elementit</h2> <p>Tässä on p-elementillä tekstiä.</p> <p>Klikkaapa tuota painiketta nyt.</p> <button> Klikkaa mua </button> </body> </html>
Painikkeen klikkaus poistaa painikkeen eli buttom-elementin.
Esimerkissä piilotetaan painike. Painikkeen tekstillä on class-tunnisteella asetettu CSS-ohje.
head-elementtiin: <script> $(document).ready(function(){ $("button").click(function(){ $(this).hide(); }); }); </script> <style> .vari1{color: red;} </style> Nämä body-elementtiin: <h3> Painike piiloon </h3> <p> Painikkeeseen liitetään this-asetuksella piilotus.</p> <button class="vari1"> Piilota painike </button>
Painikkeen klikkaus poistaa p-elementit joiden tunniste on class="teksti".
Esimerkin koodauksessa "teksti"-tunniste on h3 ja ensimmäillä p elementillä.
head-elementtiin: <script> $(document).ready(function(){ $("button").click(function(){ $("p.teksti").hide(); }); }); </script> <style> .teksti{color: slateblue;} </style> body-elementtiin: <h3 class="teksti">Otsikko ei ole p-elementti</h3> <p class="teksti">Teksti piiloon, koska on p-elementissä.</p> <p>Tämä jää näkyviin, koska ei ole teksti-tunnistetta.</p> <button> Poista teksti </button>
Esimerkissä painikkeen klikkaus poistaa sivulta ensimmäisen p-elementin. Poistettava elementti voi olla joku muu HTML-elementti tai esimerkiksi joku div-elementti tai class- tai id-tunnisteella ilmoitettu elementti.
Esimerkissä painikkeella poistetaan koodauksessa ensimmäisenä oleva p-elementti.
head-elementtiin: <script> $(document).ready(function(){ $("button").click(function(){ $("p.first").hide(); }); }); </script> <style> .teksti{color: red;} </style> body-elementtiin: <h3> Poistaa p-elementin </h3> <p class="teksti"> 1. teksti-elementti. </p> <p> 2. teksti-elementti.</p> <button> Poista 1. teksti </button>
Klikkaa alhaalla näkyvää Poista appelsiini-tekstiä.
Esimerkin koodauksessa h3-elementin klikkaaminen poistaa listan ensimmäisen tekstin. Huomaa, aina ei tarvitse käyttää painiketta vaan toiminta voidaan toteuttaa muillakin HTML-elementeillä, id- tai class-tunnisteella nimetyllä elementillä.
head-elementtiin: <script> $(document).ready(function(){ $("h3").click(function(){ $("ul li:first").hide(); }); }); </script> <style> .teksti{color: red;} </style> body-elementtiin: <p> Hedelmät: </p> <ul> <li class="teksti"> Appelsiini </li> <li> Mandariini </li> <li> Omena </li> </ul> <h3 class="teksti"> Poista appelsiini </h3>
Klikkaa painikkeella kaikki listoilta ensimmäiset pois.
Esimerkin koodauksessa poistetaan painikkeella molemmista listoista ensimmäinen li-elementti näkyvistä www-sivulla.
head-elementtiin: <script> $(document).ready(function(){ $("button").click(function(){ $("ul li:first-child").hide(); }); }); </script> <style> .teksti{color: red;} </style> body-elementtiin: <p> Hedelmät: </p> <ul> <li class="teksti"> Appelsiini </li> <li> Mandariini </li> </ul> <p> Marjat: </p> <ul> <li class="teksti"> Mansikka </li> <li> Mustikka </li> </ul> <button class="teksti"> Poista ensimmäiset </button>
Hakasulkeissa kerrotaan minkälaiset elementit on valittu scriptin kohteeksi
Klikkaa Piilota linkit -tekstistä kaikki linkit pois.
Esimerkin koodauksessa h4-elementillä toteututtu Piilota linkit teksti toimii klikkauksen kohteena ja piilottaa näkyvistä kaikki href-elementin www-sivulta.
head-elementtiin: <script> $(document).ready(function(){ $("h4").click(function(){ $("[href]").hide(); }); }); </script> <style> .teksti{color: slateblue;} </style> body-elementtiin: <h4> Piilotetaan linkkejä </h4> <p>Alla muutama linkki.</p> <p><a href="https://soundcloud.com/"> Soundcloud </a></p> <p><a href="https://www.internet-radio.com/"> Web radiot </a></p> <h4 class="teksti"> Piilota linkit </h4>
Hakasulkeissa kerrotaan scriptin kohde HTML-elementti sekä asetus.
Klikkaa Piilota linkit -tekstistä, linkki jolla on asetus katoaa.
Esimerkin koodauksessa painikkeella piilotetaan linkki eli a-elementti jossa on target="_blank" asetus.
head-elementtiin: <script> $(document).ready(function(){ $("button").click(function(){ $("a[target='_blank']").hide(); }); }); </script> <style> .teksti{color: slateblue;} </style> body-elementtiin: <h4> Asetuksen perusteella piilottaminen </h4> <p> Linkki piiloon jos linkissä on asetus target_blank. </p> <p><a href="https://soundcloud.com/" target="_blank"> Soundcloud </a></p> <p><a href="https://www.internet-radio.com/"> Web radiot </a></p> <button class="teksti"> Piilota </button>
Hakasulkeissa kerrotaan scriptin kohde HTML-elementti sekä asetus jota ei ole.
HUOMAA! Edellisessä esimerkissä käytettiin = merkkiä ("yhtä kuin") ja tässä != merkkejä ("eri kuin").
Klikkaa Piilota linkit -tekstistä , linkki jolla ei ole asetusta katoaa.
Esimerkin koodauksessa painikkeella piilotetaan linkki eli a-elementti jossa ei ole target="_blank" asetusta.
head-elementtiin: <script> $(document).ready(function(){ $("button").click(function(){ $("a[target!='_blank']").hide(); }); }); </script> <style> .teksti{color: slateblue;} </style> body-elementtiin: <h4> Asetuksen perusteella piilottaminen </h4> <p> Linkki piilon jos target asetus EI OLE _blank. </p> <p><a href="https://soundcloud.com/" target="_blank"> Soundcloud </a></p> <p><a href="https://www.internet-radio.com/"> Web radiot </a></p> <button class="teksti"> Piilota </button>
HTML-elementti, id- tai class-tunnisteinen elementti voidaan piilottaa sitä klikatessa.
Klikkaa Lähetä -painiketta, jollon painike katoaa. Esimerkkiä voidaan soveltaa esimerkiksi lomake-tietojen lähettämisessä.
Esimerkin koodauksessa painikkeen klikkaus piilottaa painikkeen jota klikattiin.
head-elementtiin: <script> $(document).ready(function(){ $("button").click(function(){ $(":button").hide(); }); }); </script> <style> .teksti{color: slateblue;} </style> body-elementtiin: <h4> Painikkeen piilottaminen </h4> <p> Painike voidaan piilottaa sitä painettaessa. </p> <button class="teksti"> Lähetä </button>
Sriptillä voidaa toteuttaa CSS-ohje tai sovelmalla vaihtaa CSS-ohje.
Esimerkissä liitetään yksinkertaiseen taulukkoon CSS-ohje joka toiselle riville aloittaen ensimmäisestä rivistä.
Esimerkin koodauksessa aloitetaan CSS-ohjeen liittäminen ensimmäisestä tr-elementistä.
head-elementtiin: <script> $(document).ready(function(){ $("tr:even").css("background-color", "yellow"); }); </script> body-elementtiin: <h4>CSS-asetuksen kohdistaminen</h4> <table border="1"> <tr><th>Merkki</th> <th>Malli</th> </tr> <tr><td> Audi </td> <td> S8 </td></tr> <tr><td> MB </td> <td> S63 </td></tr> <tr><td> Opel </td> <td> Meriva</td></tr> <tr><td> Honda </td> <td> Civic </td></tr> </table>
Sriptillä voidaa toteuttaa CSS-ohje tai sovelmalla vaihtaa CSS-ohje.
Esimerkissä liitetään yksinkertaiseen taulukkoon CSS-ohje joka toiselle riville aloittaen toisesta rivistä.
Esimerkissä aloitetaan CSS-ohjeen liittäminen ensimmäisestä tr-elementistä.
head-elementtiin: <script> $(document).ready(function(){ $("tr:odd").css("background-color", "Turquoise"); }); </script> body-elementtiin: <h4>CSS-asetuksen kohdistaminen</h4> <table border="1"> <tr><th>Merkki</th> <th>Malli</th> </tr> <tr><td> Audi </td> <td> S8 </td></tr> <tr><td> MB </td> <td> S63 </td></tr> <tr><td> Opel </td> <td> Meriva</td></tr> <tr><td> Honda </td> <td> Civic </td></tr> </table>
Tapahtuma eli event aiheuttaa jonkin muutoksen www-sivulla, esimerkissä tapahtuma sinisellä:
$("p")
.click()
;Esimerkissä, p-elementin klikkaaminen, jossa click-on tapahtuma.
Tapahtumia voidaan tuottaa seuraavilla:
Hiiri | Näppäimistö | Lomake | Dokumentti / ikkuna |
---|---|---|---|
click - klikkaus | keypress - painallus | submit - lähetä | load - lataa |
dblclick - tupla klikkaus | keydown - näppäin alhaalla | change - vaihda | resize - muuta kokoa |
mouseenter - elementin sisään | keyup - näppäin ylös | focus - kohdistettu | scroll - vieritä |
mouseleave - elementistä ulos | blur - "sumenna" | unload - pura |
Esimerkki, click
sekä dblclick
eli html-elementin hiirellä klikkaus sekä tupla klikkaus:
(päivitä lopuksi internet-selain)
Esimerkin JQuery sekä liittäminen html-elementteihin:
Sivun koodauksen head-osaan:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#yksi").click(function(){
$(this).hide();
});
$("#kaksi").dblclick(function(){
$(this).hide();
});
});
</script>
HTML-koodauksessa liittäminen (class-tunnisteella CSS-ohje):
<h4 class="marooni" id="yksi"> KLIKKAA TÄTÄ TEKSTIÄ </h4>
<h4 class="marooni" id="kaksi"> TUPLA KLIKKAA TÄTÄ TEKSTIÄ </h4>