Autor | Zpráva | ||
---|---|---|---|
leorond Profil |
#1 · Zasláno: 30. 10. 2015, 00:42:39
Ahoj, potřeboval bych použít místo
onclick -> onload ale nevím jak to udělat když onload se dá párovat jen s body iframe a img . Mohl by mi někdo pomoci? V JavaScriptech jsem nováček.
<div onclick="move(this.children[0], makeEaseOut(bounce))" class="example_path"> <div class="example_block">ROBÍME SVET LEPŠÍM</div> Děkuji |
||
Chamurappi Profil |
#2 · Zasláno: 30. 10. 2015, 01:07:25
Reaguji na leoronda:
Dej skript, který se má vykonat při načtení, normálně jako <script> za ten <div> . Nebudeš tam mít pochopitelně this , musíš si ten element najít jinak…
|
||
_es Profil |
#3 · Zasláno: 30. 10. 2015, 06:53:56
leorond:
„když onload se dá párovat jen s body iframe a img “
Logicky tá udalosť funguje na elementy, do ktorých sa načítava obsah z k ním príslušiaceho URL. Ako a kedy by mala fungovať na Div element? |
||
leorond Profil |
Dejme tomu že bych chtěl spustit automaticky jednoduchou animaci po příchodu na stránku
Živá ukázka Jak a proč bych měl upravit tento script? Prosím ať se něco málo naučím :) <!DOCTYPE HTML> <html> <head> <link type="text/css" rel="stylesheet" href="/files/tutorial/browser/animation/animate.css"> <script> function move(elem) { var left = 0 function frame() { left++ // update parameters elem.style.left = left + 'px' // show frame if (left == 100) // check finish condition clearInterval(id) } var id = setInterval(frame, 10) // draw every 10ms } </script> </head> <body> <div onclick="move(this.children[0])" class="example_path"> <div class="example_block"></div> </div> </body> </html> Chtěl bych podobným způsobem udělat přijíždějící text na úvodní obrázek stránky |
||
_es Profil |
#5 · Zasláno: 31. 10. 2015, 11:03:17
leorond:
Je vhodné na oddeľovanie príkazov používať bodkočiarku ( ; ), inak možeš vyrobiť ťažšie odhaliteľnú chybu.
Na zvyšok dotazu: Viď [#2] Chamurappi. Čo ti bráni použiť funkciu move , hocikde, kde len chceš?
|
||
leorond Profil |
#6 · Zasláno: 31. 10. 2015, 15:57:46
Takže to by znamenalo že pokud udělám zápis takto:
<div class="example_path"> <script type="text/javascript"> function move(elem) { var left = 0 function frame() { left++ // update parameters elem.style.left = left + 'px' // show frame if (left == 100) // check finish condition clearInterval(id) } var id = setInterval(frame, 10) // draw every 10ms } </script> <div class="example_block"></div> </div> Tak by se měl spustit automaticky že? |
||
_es Profil |
leorond:
„Tak by se měl spustit automaticky že?“ Nemáš predsa funkciu move nikde volanú. Funkcia sa volá:
názovFunkcie(argumenty) onclick ). Skús si znova pozorne prečítať [#2].
|
||
leorond Profil |
Takže
<body onload="NázevFunkce(argumenty)"> by mělo fungovat? Omlouvám se ale stále to nemohu pochopit [#2] Chamurappi, jak to bylo myšleno? Najít si ho jinak? Jak a proč tak má vypadat? Dej skript, který se má vykonat při načtení, normálně jako <script> za ten <div> . Za který a proč za ten?
|
||
_es Profil |
leorond:
„stále to nemohu pochopit [#2] Chamurappi, jak to bylo myšleno?“ <div class="example_block">ROBÍME SVET LEPŠÍM</div><script> move(objektElementu); </script> objektElementu bude nejaký výraz, ktorého výsledkom bude objekt toho divu.
> Takže <body onload="NázevFunkce(argumenty)"> Áno, to bude tiež fungovať, no funkcia sa zavolá o niečo neskôr - až bude HTML kód celej stránky spracovaný. |
||
leorond Profil |
#10 · Zasláno: 31. 10. 2015, 18:32:31
Zkusil jsem to Živá ukázka ale nefunguje.
Nevíte proč? |
||
Fisir Profil |
Reaguji na leoronda:
Jak už tu bylo zmíněno, v tomto případě nelze využít this . Prosím, klikni na ten odkaz a přečti si, jaký je jeho význam. Element, kterým chceš hýbat, musíš najít jiným způsobem, třeba mu přidat nějaké id a na něj se pak v JavaScriptu odkazovat.
|
||
juriad Profil |
#12 · Zasláno: 31. 10. 2015, 19:10:40
Navíc v té ukázce musíš změnit umístění JavaScriptu (klini vlevo na JS a vyber </head>).
|
||
Časová prodleva: 8 let
|
0