Sijoitetaan kaksi kuvaa images-kansioon: kuva1.jpg ja kuva2.jpg
Edellisessä kappaleen tapahtumia voidaan käytetään nettisivuilla esimerkiksi kuvan vaihtamiseen.
kohde.src = jokintoinen-src
jokintoinen-scr voi olla kuvan nimi "lainausmerkeissä" esimerkiksi "kuva2.jpg" tai viittaus toisen elementin src-arvoon.
<!DOCTYPE html> <html lang="en"> <head> <script src="https://www.matikki.fi/guidebook-python/brython/brython380/brython.js"></script> <script src="https://www.matikki.fi/guidebook-python/brython/brython380/brython_stdlib.js"></script> <title>Brython</title> <script type="text/python"> from browser import document def muutaKuva(event): kohde = document["suurikuva"] #haetaan vaihdettava kuva kohde.src = "images/kuva2.jpg" #vaihtaa kohteen kuvan src-arvon document['pienikuva2'].bind("mouseenter", muutaKuva) #liitetään tapahtumafunktio </script> </head> <body onload="brython({debug:1,indexedDB: false})"> <img id="suurikuva" src="images/kuva1.jpg" height="300px" /> <br /> <img id="pienikuva2" src="images/kuva2.jpg" height="50px" /> </body> </html>
Huomaa! Kuvan src-arvossa pitää olla myös mukana kansion nimi, jos kuvat sijaitsevat omassa kansiossaan.
Joskus on kätevää viitata tapahtuman elementtiin.
tapahtumaelementti = event.currentTarget
Esimerkiksi, jos meillä on monta kuvaa sivulla, niin meidän ei tarvitse viitata jokaisen kuvan omaan nimeen. Alla kuva muutetaan viittaamalla tapahtumaelementin scr-arvoon
<!DOCTYPE html> <html lang="en"> <head> <script src="https://www.matikki.fi/guidebook-python/brython/brython380/brython.js"></script> <script src="https://www.matikki.fi/guidebook-python/brython/brython380/brython_stdlib.js"></script> <title>Brython</title> <script type="text/python"> from browser import document def muutaKuva(event): kohde = document["suurikuva"] #haetaan vaihdettava kuva tapahtumaelementti = event.currentTarget #hakee kuvan, jossa tapahtuma tapahtui kohde.src = tapahtumaelementti.src #vaihtaa kohteen kuvan src-arvon document['pienikuva1'].bind("mouseenter", muutaKuva) #liitetään tapahtumafunktio document['pienikuva2'].bind("mouseenter", muutaKuva) #kaikkiin pikkukuviin </script> </head> <body onload="brython({debug:1,indexedDB: false})"> <img id="suurikuva" src="images/kuva1.jpg" height="300px" /> <br /> <img id="pienikuva1" src="images/kuva1.jpg" height="50px" /> <img id="pienikuva2" src="images/kuva2.jpg" height="50px" /> </body> </html>
Rakenna esimerkkiin
funktio, mikä muuttaa ison kuvan takaisin oletuskuvaksi, kun hiiri poistuu mistä tahansa pienestä kuvasta.
Liitä pieniin kuviin ko. tapahtumafunktio.
Huomaa, että kuvien osoitteet viittaavat niiden absoluuttiseen osoitteeseen netissä!
Liitä esimerkkiin
kaksi kuvaa lisää: "kuva3.jpg" ja "kuva4.jpg" vaihtuvina kuvina.
Huomaa, että kuvien osoitteet viittaavat niiden absoluuttiseen osoitteeseen netissä!