Autor | Zpráva | ||
---|---|---|---|
Guest Profil * |
#1 · Zasláno: 1. 1. 2013, 22:06:27
Ahoj,
potřeboval bych pomoc, vím, že je to nejspíš banalita, ale nenapadlo mě, jak to strýčkovi googlovi formulovat, takže se obracím na vás: Mám tenhle kód: <body onKeyDown="keyUp(evt);"> <script type="text/javascript"> function keyUp(evt) { if(evt.keyCode == 13) { alert('stisknul jsi ENTER'); } } <body> , jelikož pro všechny stránky používám stejnou hlavičku a nechce se mi to tam psát, když to použiju jen na jedné stránce....
Taže bych potřeboval něco jako tohle (to mi bohužel nefunguje) <script type="text/javascript"> document.onKeyDown= keyUp(evt); function keyUp(evt) { if(evt.keyCode == 13) { alert('stisknul jsi ENTER'); } } Díky moc za nápady na řešení :) |
||
ShiraNai7 Profil |
#2 · Zasláno: 1. 1. 2013, 22:53:32
Guest:
document.body.onkeydown |
||
Guest Profil * |
#3 · Zasláno: 2. 1. 2013, 11:01:18
:( to mi taky nefunguje, ted to mám takhle, a pořád se mu nějak nechce ... nevíte prosím někdo čím by to mohlo být??
<script type="text/javascript"> document.body.onKeyDown=keyUp(evt); function keyUp(evt) { if(evt.keyCode == 13) { alert('stisknul jsi ENTER'); } } </script> |
||
DJ Miky Profil |
#4 · Zasláno: 2. 1. 2013, 11:07:42
Viz Časté potíže, zajímavosti a poučné debaty » Rozdíl mezi voláním funkce a funkcí. Do
onkeydown musíš přiřadit samotnou funkci (keyUp ), ne výsledek jejího volání (keyUp(event) ).
onkeydown = keyUp(evt); znamená "zavolej funkci keyUp s proměnnou evt (která není definovaná) jako parametrem a návratovou hodnotu přiřaď do onkeydown ". A jelikož keyUp nic nevrací (resp. vrací undefined ), přiřadí se ti do onkeydown taky undefined .
|
||
Guest Profil * |
#5 · Zasláno: 2. 1. 2013, 11:25:57
Jo, takže, pokud jsem to dobře pochopil, tak potřebuju ten 8. řádek:
window.onload = function() { alert("Ahoj."); }; // alert vyskočí až při události onload <script type="text/javascript"> window.body.onKeyDown=function(){ if(evt.keyCode == 13) { alert('stisknul jsi ENTER'); } } </script> ale steně mi to nefunguje :( |
||
Chamurappi Profil |
Reaguji na Guesta:
Ta vlastnost se jmenuje onkeydown , ne onKeyDown .
A window.body není nic.
|
||
Radek9 Profil |
Guest:
To onkeydown musí být malými písmeny, JS je case-sensitive. body je na document u, ne na window . A ještě musíš nějak definovat evt :
document.body.onkeydown = function (evt) { if (!evt) { evt = window.event; } if (evt.keyCode === 13) { alert("Stisknul jsi ENTER."); } }; |
||
Chamurappi Profil |
#8 · Zasláno: 2. 1. 2013, 11:31:07
Reaguji na Radka9:
„ještě musíš nějak definovat evt “
+ ošetřit, že když není evt , tak evt = window.event .
|
||
Guest Profil * |
#9 · Zasláno: 2. 1. 2013, 11:33:16
Supr už mi to fungeje, dík, to mě nenapadlo.
Finální podoba: <script type="text/javascript"> window.onkeydown=function(evt) { if(evt.keyCode == 13) { alert('stisknul jsi ENTER'); } } </script> |
||
_es Profil |
#10 · Zasláno: 3. 1. 2013, 09:52:27
|
||
Časová prodleva: 11 let
|
0