Avatar billede miley Nybegynder
06. november 2002 - 23:57 Der er 7 kommentarer

Opdatering af frame.

Hej eksperter !

Jeg har lavet et javascript som skal poppe et vindue op og hvis det allerede
er åbent, så skal framen med navnet "chat" opdateres i dette popup-vindue:

var nytVin = null;

function chatVin()
{
if (nytVin && nytVin.open && !nytVin.closed) {
nytVin.window.parent.chat.location.reload(true);
}
else {nytVin =
window.open('http://www.sitename.dk/chat/chatform.php','nytVin','width=300,h
eight=320'); }
}

Det virker fint på min computer med XP og IE6 men hos en anden bruger af mit
site(som også kører med XP og IE6) virker det ikke. Vinduet popper op hvis
det ikke er åbent men det bliver ikke opdateret hvis det allerede er åbent
:-(((
Hvad er det der er forkert i koden ???
Hvis I har andre forslag til hvordan man kan lave et script med den ønskede
funktionalitet er disse også mere end velkomne !!!

Mvh
Michael Hansen
Avatar billede nikolajdu Nybegynder
07. november 2002 - 01:25 #1
et skud i tågen... prøv at fjerne window

nytVin.parent.chat.location.reload(true);
Avatar billede grunken Nybegynder
07. november 2002 - 02:26 #2
hmm, det ser da ud til at skulle burde dú, pånær din if sætning, den er skisme ikke helt go :), ret den og jeg er sikker på at du får et meget bedre resultat :)

function chatVin()
{
if (nytVin != null)
{
nytVin.parent.frames['chat'].location.reload(true);
}
else {nytVin = window.open('http://www.sitename.dk/chat/chatform.php','nytVin','width=300','height=320');
}
}

ups, kom vis til at ændre i lidt mere end if sætningen, men nu burde den være hjemme i de fleste browsere :))

-grunken
Avatar billede miley Nybegynder
07. november 2002 - 17:00 #3
grunken > Har nu prøvet din kode og den kan da også godt poppe vinduet op, men hvis man lukker vinduet og prøver at poppe det op igen så kommer der fejl !

-Michael
Avatar billede grunken Nybegynder
08. november 2002 - 15:50 #4
Hej Michael ha prøvet at skrive den lidt om så den passer til dit behov, prøv at ændre hele dynen til det her :)

<script language="JavaScript">
    var nytVin=null;
    function chatVin()
{
    nytVin = window.open('http://www.sitename.dk/chat/chatform.php','nytVin','width=300','height=320');
    if (nytVin != null) {
    if (nytVin.opener == null )
    nytVin.opener = self;
    nytVin.parent.chat.location.reload(true);
    nytVin.focus();
}
</script>

-grunken
Avatar billede miley Nybegynder
08. november 2002 - 18:27 #5
Hmmmm det virker slet ikke ! For det første kommer den med fejl fordi der mangler et }. Men efter hvad jeg kan se gør den nu heller ikke det jeg har brug for. Funktionen åbner vinduet hver gang den køres. Den skal kun åbne vinduet hvis det ikke er åbent. Hvis vinduet er åbent skal den opdatere en frame i popupvinduet der hedder chat.

-Michael
Avatar billede grunken Nybegynder
10. november 2002 - 16:28 #6
den sidste virker NU!, men nok om det !, hvis du bruger nedenstående

function chatVin()
{
if (nytVin != null)
{
nytVin.parent.frames['chat'].location.reload(true);
}
else {nytVin = window.open('http://www.sitename.dk/chat/chatform.php','nytVin','width=300','height=320');
}
}

og jeg kan jo se at dit popup kører med frames kan du ikke i en af dine frames når vinduet bliver lukket (ikke chatframen)ligge en <body onunload="var nytVin = null;">

-grunken
Avatar billede nikolajdu Nybegynder
09. januar 2003 - 04:27 #7
ehe lukke???
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester