Forum » Izdelava spletišč » Ko ne najde objekta JavaScript noče nadaljevat! GRR!
Ko ne najde objekta JavaScript noče nadaljevat! GRR!
pivmik ::
OK, jebem se že celo popoldne s to kurčevo javascript kodo:
function add(avatarurl)
{
if (window.opener.document.forms['registration'].avatar) {
window.opener.document.forms['registration'].avatar.value=avatarurl;
}
else if (window.opener.document.forms['profile123'].newavatar) {
window.opener.document.forms['profile123'].newavatar.value=avatarurl;
}
else {
alert('Avatarja ni bilo mogoce izbrati,\nURL naslov avatarja bos moral vpisati rocno.');
}
window.close()
Ta koda je v avatars.html strani katera se odpre v popup oknu s pritiskom na en gumb:
onClick="javascript:window.open('avatars.html','','width=256,height=480,scrollbar=yes');"
Gumb za odpiranje tega popupokna je na DVEH različnih straneh.
Ena stran(za registracijo) vsebuje element:
window.opener.document.forms['registration'].avatar
Druga stran(za editiranje profila/nastavitev) pa vsebuje:
window.opener.document.forms['profile123'].newavatar
Stvar je v tem da če ne obstaja ta element:
window.opener.document.forms['registration'].avatar
se JavaSkripta ustavi.
Prav tako če pa že obstaja element:
window.opener.document.forms['registration'].avatar
lepo vnese podatek v ta element vendar se izvajanje JavaSkripta ustavi tukaj:
else if (window.opener.document.forms['profile123'].newavatar) {
tako da window.close() se ne more izvesti.
Kako naredit da bo skripta delovala z obema stranema oz kako preprečiti zaustavitev izvajanja JavaSkripte?
Poskusim sem tako kot v IE kot tudi v Operi.
Opera ki je pameten browser mi omogoča pogled nad JavaScript napakami, to piše tam:
Event thread: onclick
Error:
name: TypeError
message: Statement on line 5: Expression evaluated to null or undefined and is not convertible to Object: window.opener.document.forms["registration"]
Backtrace:
Line 5 of inline#1 script in avatars.html
if (window.opener.document.forms["registration"].avatar)
In unknown script
add("http://www.naslov.com/avatarja/online.g...
At unknown location
{event handler trampoline}
Jaz bom jetra spluval ven od jeze!!! Pomagajte mi :(
function add(avatarurl)
{
if (window.opener.document.forms['registration'].avatar) {
window.opener.document.forms['registration'].avatar.value=avatarurl;
}
else if (window.opener.document.forms['profile123'].newavatar) {
window.opener.document.forms['profile123'].newavatar.value=avatarurl;
}
else {
alert('Avatarja ni bilo mogoce izbrati,\nURL naslov avatarja bos moral vpisati rocno.');
}
window.close()
Ta koda je v avatars.html strani katera se odpre v popup oknu s pritiskom na en gumb:
onClick="javascript:window.open('avatars.html','','width=256,height=480,scrollbar=yes');"
Gumb za odpiranje tega popupokna je na DVEH različnih straneh.
Ena stran(za registracijo) vsebuje element:
window.opener.document.forms['registration'].avatar
Druga stran(za editiranje profila/nastavitev) pa vsebuje:
window.opener.document.forms['profile123'].newavatar
Stvar je v tem da če ne obstaja ta element:
window.opener.document.forms['registration'].avatar
se JavaSkripta ustavi.
Prav tako če pa že obstaja element:
window.opener.document.forms['registration'].avatar
lepo vnese podatek v ta element vendar se izvajanje JavaSkripta ustavi tukaj:
else if (window.opener.document.forms['profile123'].newavatar) {
tako da window.close() se ne more izvesti.
Kako naredit da bo skripta delovala z obema stranema oz kako preprečiti zaustavitev izvajanja JavaSkripte?
Poskusim sem tako kot v IE kot tudi v Operi.
Opera ki je pameten browser mi omogoča pogled nad JavaScript napakami, to piše tam:
Event thread: onclick
Error:
name: TypeError
message: Statement on line 5: Expression evaluated to null or undefined and is not convertible to Object: window.opener.document.forms["registration"]
Backtrace:
Line 5 of inline#1 script in avatars.html
if (window.opener.document.forms["registration"].avatar)
In unknown script
add("http://www.naslov.com/avatarja/online.g...
At unknown location
{event handler trampoline}
Jaz bom jetra spluval ven od jeze!!! Pomagajte mi :(
LP, Gregor GRE^
OwcA ::
Kaj, ko bi preverjal za vse elemente v verigi, ako obstajajo?
if (<b>window.opener.document.forms['registration']</b> && window.opener.document.forms['registration'].avatar) ...
Otroška radovednost - gonilo napredka.
Zgodovina sprememb…
- spremenilo: OwcA ()
pivmik ::
Owca hvala!
Dela, ne morem verjet da dela.
Jazst javascript ne poznam zelo dobro, vedno samo neki improviziram z njim :)
Uaaaa! Dela! še zdej ne morem verjet.
Niti zdej!
Dela, ne morem verjet da dela.
Jazst javascript ne poznam zelo dobro, vedno samo neki improviziram z njim :)
Uaaaa! Dela! še zdej ne morem verjet.
Niti zdej!
LP, Gregor GRE^
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Slo-Tech userscriptsOddelek: Izdelava spletišč | 5173 (2625) | jype |
» | [javaScript] Preverjanje formata zapisa EMŠOOddelek: Programiranje | 2937 (2557) | win64 |
» | Odprtje nove strani z javascript brez menija, statusne vrstice in naslovne vrstice. LOddelek: Izdelava spletišč | 2126 (1846) | mte |
» | En iziv....Oddelek: Izdelava spletišč | 1324 (998) | alesrosina |
» | "Paste" iz enega okna v drugega?Oddelek: Programiranje | 991 (885) | poweroff |