Autor | Zpráva | ||
---|---|---|---|
Fred Profil |
#1 · Zasláno: 15. 12. 2005, 20:38:50
Nějak nemůžu najít chybu, nebo jí odstranit. V MSIE mi tohle vyhodí chybu na
tomhle vystup=mix[i].split('').sort(nahoda)+' '; a nevím proč? Je to tady http://xy.wz.cz/michadlo.htm |
||
Leo Profil |
#2 · Zasláno: 15. 12. 2005, 20:44:17
Trochu divoky kod ne? Otestoval bych co je v dane chvili v promennych, a klidne bych si udelal i nejake pomocne pro mezivysledky. Leo
|
||
Chamurappi Profil |
#3 · Zasláno: 15. 12. 2005, 22:12:15 · Upravil/a: Chamurappi
Explorer 4 přišel s tím, že na jednotlivé objekty půjde ukázat prostřednictvím jejich id. Později vydaná specifikace HTML 4 jeho interpretaci víceméně podpořila. Ještě o něco později vydaný DOM Level 1 začal prosazovat metodu document.getElementById(). Dodnes mi není moc jasné, proč se k tomuto účelu vůbec někdy používal document.all.
Formálně vzato Explorer vytvoří pro každý element s nastaveným atributem id referenci na (implicitním) objektu window. Tudíž se lze na <div id="vystup"> odkázat přímo jako na vystup (či window.vystup), bez volání jakékoliv funkce. Frede, nediv se, že se trochu brání, když se snažíš z elementu udělat řetězec. Opera a Mozilla podporují tyto reference již také, ale jsou zjevně tolerantnější. |
||
Leo Profil |
#4 · Zasláno: 15. 12. 2005, 23:02:23
"Dodnes mi není moc jasné, proč se k tomuto účelu vůbec někdy používal document.all"
Netusim, ale nebylo to tim, ze tak se da odkazovat i na elementy s atributem name (misto novejsiho id)? "Opera a Mozilla podporují tyto reference již také, ale jsou zjevně tolerantnější." Bohuzel. Musi kopirovat kdejakou volovinu. Leo |
||
Leo Profil |
#5 · Zasláno: 15. 12. 2005, 23:03:38
K problemu - staci vsechny promenne (i globalni) deklarovat pres var a je po IE ptakach. Leo
|
||
Fred Profil |
#6 · Zasláno: 15. 12. 2005, 23:12:56
Trochu divoky kod ne? No je to hodně v začátku před tím co z toho má být.
staci vsechny promenne Super, díky, stačilo var vystup; |
||
Fred Profil |
#7 · Zasláno: 16. 12. 2005, 00:17:06
Teď už bude asi pochopitelnější o co mi jde http://xy.wz.cz/michadlo.htm , chtěl bych si udělat genrátor dummy textu an základě jednoho e-mailu, asi hoaxu. Jen si teď nevím rady s interpunkcí, dělá mi v tom hokej. Takže se vrátím k tomu Trochu divoky kod ne? , otázka je jak ho vylepšit. Dík předem, za cestu, radu.
|
||
Fred Profil |
#8 · Zasláno: 16. 12. 2005, 00:22:56
BTW, zkoušejte reload, nebo vložte nějaký text a mělo by ho to zamíchat. Odřízne to první a poslední písmeno ve slově a střed to zamíchá a přilepí to zpátky. Problémy mám s tečkami, čárkami, vykřičníky atd. Největší potíž je s čárkami, protože je dostraňuji z toho arraye a asi bohužel blbě.
|
||
Chamurappi Profil |
#9 · Zasláno: 16. 12. 2005, 00:23:03
Reaguji na Lea:
„Netusim, ale nebylo to tim, ze tak se da odkazovat i na elementy s atributem name (misto novejsiho id)?“ To by bylo možné. Jenže: 1) id není novější -- z hlediska toho účelu býti terčem javascriptových hrátek (<a name> samozřejmě trošku starší je) 2) reference se automaticky vytvoří i podle name „Bohuzel. Musi kopirovat kdejakou volovinu.“ Bohužel teď funguje více stránek více lidem. To je strašné, že? :-) Reaguji na Freda: Druhé možné řešení: použít jiné jméno proměnné, třeba volteFreda. Pravda ovšem je, že definování lokálně užívané proměnné jako lokální je lepší. |
||
Chamurappi Profil |
#10 · Zasláno: 16. 12. 2005, 00:34:03 · Upravil/a: Chamurappi
Reaguji na Freda:
„<meta http-equiv="content-type" content="application/xhtml+xml; charset=windows-1250" />“ - trochu nesmyslný řádek. Víš, že metoda String.replace() může mít jako druhý argument funkci? Tedy že můžeš jednoduchým regulárním výrazem vybírat slova a na každé rovnou aplikovat žádanou úpravu? |
||
Fred Profil |
#11 · Zasláno: 16. 12. 2005, 00:36:14
trochu nesmyslný řádek hm, bylo to po ruce, jen kvůli cs.
String.replace může mít jako druhý argument funkci? To vypadá slibně, jdu googlovat. Děkuji. |
||
Chamurappi Profil |
#12 · Zasláno: 16. 12. 2005, 00:46:45
Reaguji na Freda:
„hm, bylo to po ruce, jen kvůli cs.“ HTML prohlížeč to pravděpodobně přehlédne, neb tam není jemu srozumitelný MIME typ. XHTML prohlížeč je povinen to přehlédnout, neb XML procesor musí znát kódování již v okamžiku, kdy začíná rozebírat strukturu. Ačkoliv je fakt, že rodina XML má v kódování dost bordel. Webové prohlížeče jsou již tolerantní, takže i dokument, který vlastně není správě sestavený, s chutí rozeberou. |
||
peta Profil * |
#13 · Zasláno: 16. 12. 2005, 08:58:20
Fred
" Nějak nemůžu najít chybu, nebo jí odstranit. V MSIE mi tohle vyhodí chybu na tomhle vystup=mix[i].split('').sort(nahoda)+' '; a nevím proč? " Nebude to podobny problem jako u play() (v IE prehravani hudby)? Hadal bych mix() , ze je funkce IE. Schvalne... Tak smula, nepodarilo se mi to najit. Uz by si meli MS udelat poradek ve vyhledavani msdn.microsoft.com Nevim, proc nahrazujes carky v poli? mnohem jednodussi je pouzit regularni vyraz, nahradit vsechny !., za mezeru nebo nic a rozsekat na pole. |
||
peta Profil * |
#14 · Zasláno: 16. 12. 2005, 08:59:41
String.replace - http://www.volny.cz/peter.mlich/www.htm#www62
|
||
Oswald Profil |
#15 · Zasláno: 16. 12. 2005, 11:35:04 · Upravil/a: Oswald
Největší potíž je s čárkami, protože je dostraňuji z toho arraye a asi bohužel blbě.
Mám pocit, že tady - "vystup=prvni+mix[i].slice(1,mix[i].length-1).split('').sort(nahoda)+p osledni;" - to pole převedeš na string, tím pádem se spojí jednotlivé prvky čárkama (zavolá se metoda Array.prototype.toString, která přesně tohle dělá). Pokud zavoláš vystup = vystup.join('') + posledni, tak čárky nebudeš muset odstraňovat. |
||
Fred Profil |
#16 · Zasláno: 16. 12. 2005, 16:51:18
Díky, bylo to ono.
|
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0