Autor | Zpráva | ||
---|---|---|---|
gardener Profil |
#1 · Zasláno: 14. 4. 2010, 13:34:39
Zdravim, chtel bych se zeptat proc kdyz zapisi:
<script type="text/javascript"> $("button").click(function () { $("#main_section").hide("slow"); }); </script> V headu a pote je nekde v body pouzit prave tento button, akce se neprovede. Pokud ale skript uvedu az za definici buttonu, vse funguje, jde to nejak obejit abych si vse mohl includovat v jedom souboru v headu? Diky za kazdou radu. |
||
Dante85 Profil * |
#2 · Zasláno: 14. 4. 2010, 13:38:48
Zkuste :
<script type="text/javascript"> window.addEvent('domready', function() { $("button").click(function () { $("#main_section").hide("slow"); }); }); </script> |
||
nightfish Profil |
#3 · Zasláno: 14. 4. 2010, 13:40:32
když už jQuery, tak
$(document).ready(function() { $("button").click(function () { $("#main_section").hide("slow"); }); }); jinak důvod je prostý - v okamžiku, kdy je skript v hlavičce spuštěn, nemusí ještě existovat kompletní DOM strom |
||
gardener Profil |
#4 · Zasláno: 14. 4. 2010, 14:17:23
Děkuji za radu.
|
||
Chamurappi Profil |
#5 · Zasláno: 14. 4. 2010, 14:21:08 · Upravil/a: Chamurappi
Reaguji na gardenera:
Proč chceš mít skripty zrovna v hlavičce, pokud je zbytek stránky nepotřebuje mít při načítání k dispozici? Brzdí načítání. Reaguji na nightfisha: „okamžiku, kdy je skript v hlavičce spuštěn, nemusí ještě existovat kompletní DOM strom“ „Nemusí“ není přesné, on skutečně neexistuje, protože skript se vyhodnocuje okamžitě. |
||
nightfish Profil |
#6 · Zasláno: 14. 4. 2010, 14:38:18
Chamurappi:
děkuji za upřesnění, zkusím si to do příště zapamatovat |
||
Lopata Profil |
#7 · Zasláno: 14. 4. 2010, 15:40:18
nightfish:
Nebo ještě kratší $(function () { $("button").click(function () { $("#main_section").hide("slow"); }); }); |
||
Časová prodleva: 14 let
|
0