Autor | Zpráva | ||
---|---|---|---|
Indy_witsch Profil |
#1 · Zasláno: 16. 9. 2005, 17:33:59
Jak bych mohl doplnit polížko "input" o nějaký text vložený pomocí funkce onkeypress ? Zkoušel jsem to, ale pohořel jsem. Jedná se mi konktérně o to, že bude někde napsané "modrá, červená...atd..." no a když člověk klikne na ten text (třeba) červená, tak se mu to "input" doplní slovo red.
|
||
Marty Profil |
#2 · Zasláno: 16. 9. 2005, 17:40:56
<input type="text" value="cervena" onkeypress="this.value = 'red'" />
Když se nad políčkem formuláře stiskne klávesa, tak se změní jeho text na red. To by vám mohlo pomoci, pokud jsem váš dotaz pochopil správně, ale míchate tam kliknutí a stisk klávesy dohromady, tak nevím. |
||
Indy_witsch Profil |
#3 · Zasláno: 16. 9. 2005, 17:47:01
Já jsem měl namysli text mimo ten "input". Tohle bych zvládl, ale když jsem to dělal s tím textem mimo tak mi to nešlo.
|
||
Časová prodleva: 13 dní
|
|||
caesar1987 Profil |
#4 · Zasláno: 29. 9. 2005, 23:01:45
tak tam das naprv musis vlozit text do niecoho, co sa da pomenovat, napr do span....
a potom to spravis cez adresovanie prvkov.... |
||
Meldo Profil |
#5 · Zasláno: 1. 10. 2005, 00:09:12
pouzivat klavesove skratky sa moc nedoporucuje. vela uzivatelov pouziva klav. skratky na ovladanie spojho prehliadaca a tymto im to mozete znemoznit.
|
||
peta Profil * |
#6 · Zasláno: 1. 10. 2005, 19:42:53
Indy_witsch
Jo takhle, ty klepnes na R a ono to vyplni policko "aaa" cim? a policko "bbb" se uz nevyplni? nebo jaky to ma ucel. Mimochodem, jak rika Meldo, kdyz si zablokujes klavesnici, cim budes psat a pouzivat alt+r, kdyz na r mi to prepise policko? j teda pouzivam pro objekt script daleko obsahlejsi, ale to te nemusi vzrusovat function objGet(x) {var d=document;if(typeof x=='string') x=d.getElementById?d.getElementById(x):d.all?eval('d.all.'+x):d.layers ?d.layers[x]:null; return x;} tobe staci toto: <script> function objGet(x) {return document.getElementById(x);} function objv(a,b) {objGet(a).value=b;} function klavesa(e) {var k; if (!e) var e=window.event;with(e){k=charCode?charCode:keyCode?keyCode:which} if (k==65) objv("aaa","red") } document.onkeyup = klavesa; document.focus(); </script> <body> <input type="text" size="15" id="aaa" value="kukuc" /> </body> |
||
peta Profil * |
#7 · Zasláno: 1. 10. 2005, 19:44:40
a pozor, tento radek by mel byt spravneji spise, ale bude fungovat i tamten:
if (!e) var e=window.event;k=e.charCode?e.charCode:e.keyCode?e.keyCode:e.which; |
||
peta Profil * |
#8 · Zasláno: 1. 10. 2005, 19:46:24
65 je teda male "a", pokud neznas kody klaves...
|
||
Leo Profil |
#9 · Zasláno: 1. 10. 2005, 19:48:18
eval('d.all.'+x)
To je proboha co, Leo |
||
Časová prodleva: 5 dní
|
|||
peta Profil * |
#10 · Zasláno: 6. 10. 2005, 08:10:24
Leo
To je prosim pekne eval, jako evaluate, nebo jak se to pise. To neznas? :) A jakym zpusobem by to pan chytrej zapsal, aby to bylo jednoduse? Eval je nahodou velice dobra funkce, kdyz delas kalkulacku, kde prevedes string na vzorec a nemusis si tu funkci psat sam a rozebirat cast po casti. |
||
Chamurappi Profil |
#11 · Zasláno: 6. 10. 2005, 08:28:36
Reaguji na petu:
Co třeba jen eval(x)? Onen slavný document.all nikdy nebyl v Exploreru potřeba k identifikaci konkrétního objektu. Měla to být kolekce všech prvků, podobně jako existuje třeba kolekce obrázků document.images nebo formulářů document.forms. |
||
Leo Profil |
#12 · Zasláno: 6. 10. 2005, 10:30:06
Pak chytrej by predne nikdy nepouzil document.all, ktery beha jen v IE, a kdyz tak treba ve tvaru
document.all[x], nebo jak ten IE implementuje. Leo |
||
Chamurappi Profil |
#13 · Zasláno: 6. 10. 2005, 10:59:21 · Upravil/a: Chamurappi
Reaguji na Lea:
Už přes rok běhá document.all i v Mozille a minimálně dva roky i v Opeře. I kdyby neběhal, nic se neděje. Přečti si celý řádek, document.all je tam jen jako alternativa, kdyby document.getElementById() nechodilo. „a kdyz tak treba ve tvaru document.all[x], nebo jak ten IE implementuje“ Pložka asociativního pole a vlastnost objektu je víceméně totéž. K vlastnosti mohu přistupovat skrze objekt["vlastnost"] a k položce asociativního pole skrze pole.položka. |
||
Leo Profil |
#14 · Zasláno: 6. 10. 2005, 11:02:35
"Pložka asociativního pole a vlastnost objektu je víceméně totéž. K vlastnosti mohu přistupovat skrze objekt["vlastnost"] a k položce asociativního pole skrze pole.položka."
To ja vim, prave proto je nesmysl pouziva eval. Leo |
||
peta Profil * |
#15 · Zasláno: 6. 10. 2005, 13:17:41
Chamurappi
Onen slavný document.all nikdy nebyl v Exploreru potřeba Co treba IE4 ? :) Leo document.all[x] to je document.layers[x], to si pletes Ale nejsem si jistej... Takze rikas, ze document.all.name je totez jako document.all[name] ? Jestli ano, pak to budu pouzivat. Zatim znam jedine reseni, jak pristupovat k name prvkum a to pres eval('document.all.'+'ahoj') <input name="ahoj"> Protoze document.all.'ahoj' je nesmysl document.all['ahoj'] se mi jevi jako stejny nesmysl, nicmene stoji to za zvazeni a vyzkouseni. Takze pokud mas vyzkouseno, dej mi vedet. totez pro document.'ahoj' document['ahoj'] Mno, koukam, ze v dalsich reakcich se o tom bavite, ja to vyzkousim. Sem tuto cast scriptu proste odnekud opsal a tam to bylo s eval. Ale uz se to blizi k dokonalosti :) |
||
peta Profil * |
#16 · Zasláno: 6. 10. 2005, 13:28:31
Leo diky, s temi zavorkami to funguje. Taky nemam rad eval, ale fakt sem nevedel...
|
||
Chamurappi Profil |
#17 · Zasláno: 6. 10. 2005, 13:35:24
Reaguji na petu:
Ani Explorer 4 document.all vůbec nepotřeboval. U asociativních polí platí v JS přesně toto: document.all.ahoj (bez uvozovek) je totéž, co document.all["ahoj"] |
||
Leo Profil |
#18 · Zasláno: 6. 10. 2005, 13:36:06
S tou hranatou zavorkou to v IE pravdepodobne beha jak v pripade, ze x je hodnota id, tak name. Leo
|
||
Leo Profil |
#19 · Zasláno: 6. 10. 2005, 13:38:31
"U asociativních polí platí v JS přesně toto: document.all.ahoj (bez uvozovek) je totéž, co document.all["ahoj"]"
Pripadne document.all."ahoj" (pokud by ahoj bylo klicove slovo javascriptu) Leo |
||
peta Profil * |
#20 · Zasláno: 7. 10. 2005, 13:59:46
Chamurappi
A jak to teda v IE4 behalo? Vcera jsem zkousel "document.ahoj" "document.all.ahoj" v prvnim pripade nic, ve druhem pohodka nebo jako staci "ahoj" pro pristup k objektu a prohlizec, at si poradi, jak umi? Neco jako je window.document, ze staci pouze document, pokud nepouzivam framy? x=d.getElementById?d.getElementById(x):d.all?d.all[x]:d.layers?d.layer s[x]:null; |
||
Chamurappi Profil |
#21 · Zasláno: 7. 10. 2005, 15:39:38 · Upravil/a: Chamurappi
Reaguji na petu:
Ano, Explorer 4 generoval reference na objektu window jako window.idObjektu, tj. funguje samotné idObjektu. Ostatní prohlížeče tuto vlastnost přebraly zřejmě zároveň s podporou document.all. |
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0