Autor Zpráva
Fred
Profil
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
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
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
"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
K problemu - staci vsechny promenne (i globalni) deklarovat pres var a je po IE ptakach. Leo
Fred
Profil
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
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
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
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
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
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
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 *
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 *
String.replace - http://www.volny.cz/peter.mlich/www.htm#www62
Oswald
Profil
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
Díky, bylo to ono.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0