Avatar billede toni01 Nybegynder
02. februar 2001 - 11:08 Der er 11 kommentarer og
1 løsning

javascript hjælp

Heeey,

Er der nogen af jer hajer, der ved om man kan lukke et browser vindue fra et
andet browser via javascript? Jeg har noget kode der kan åbne og lukke en
browser fra en anden browser, men jeg vil kunne lukke en anden browser ned
fra en browser der ikke har startet den browser der skal lukkes ned.

Giver det nogen mening??

Med andre ord:
Browser 1 starter browser 2
Browser 1 starter browser 3
Browser 1 lukker sig selv ned
Browser 3 lukker browser 2 ned
Avatar billede hope Nybegynder
02. februar 2001 - 11:09 #1
kan godt lade sig gøre, hold modet oppe til der kommer nogen der ved hvordan.....for det gør jeg ikke :o)
Avatar billede jumper Nybegynder
02. februar 2001 - 11:15 #2
Tja, for at kunne gøre dette er der nogle krav. For det første kan man kun automatisk lukke vinduer man selv har åbnet gennem Javascript (det er vist ordnet, vindue 2 og 3 bliver åbnet fra vindue 1), husk gennem Javascript og ikke med en target=noget. For det andet skal vinduerne navngives, vindue 1 bliver jo lukket og derfor kan du ikke gemme en direkte objekt reference mellem vindue 2 og 3.

Fra vindue 1 åbner vi så vindue 2 og 3:

window.open(\"side2.html\",\"vindue2\",\"width=640,height=480\");
window.open(\"side3.html\",\"vindue3\",\"width=640,height=480\");

Vindue 1 lukker sig selv ned.

Så vil vi lukke vindue 2 fra vindue 3. Siden vindue 1 er lukket må vi genskabe en objekt reference til vindue 2:

reference = window.open(\"\",\"vindue2\");

Denne kan så lukkes:

reference.close()

og de 2 linjer kan forkortes lidt:

(window.open(\"\",\"side2\")).close()

/Thor
Avatar billede toni01 Nybegynder
02. februar 2001 - 11:45 #3
ser godt ud, der arbejdes på løsningen (0: hvis der er opstår problemer meldes tilbage.

/toni
Avatar billede jakoba Nybegynder
02. februar 2001 - 14:09 #4
Jeg er lidt i tvivl. Idet vindue 2 og 3 åbnes tildeles de en opener variabel der linker til det winduesobjekt det oprettede dem. Og i clientref står der at det objekt ikke garbagecollectes når vindue 1 lukkes fordi de to opener variable peger på det og holder det i live!.
Det må være eet javascript memory-management system, og dermed også links der kan linke til hvorsomhelst i alle vinduer fra samme træ.

så hvad med:
var storeBror = window.open(\"side2.html\",\"vindue2\",\"width=640,height=480\");
var lilleBror = window.open(\"side3.html\",\"vindue3\",\"width=640,height=480\");
storeBror.minLilleBror = lilleBror;
lilleBror.minStoreBror = storeBror;

og så kan vindue2 lukke vindue3 med
  minLilleBror.close();

mvh JakobA
Avatar billede olebole Juniormester
03. februar 2001 - 01:54 #5
<ole>
Thors eksempel vil virke fint, men det bliver vist ikke så pænt anden gang, man trykker på linket. Så vil der komme et vindue frem, som lukkes med det samme. Det kan fanges på denne måde:

var folded = false;
function myClose(which) {
    if (!folded) {
        (window.open(\"\",which)).close();
        folded = true;
    }
}

...som så kaldes med det ønskede vindue som argument:
  <a href=\"java script:myClose(\'vindue1\');\">Luk det så, NÅ!</a>
/mvh
</bole>
Avatar billede olebole Juniormester
03. februar 2001 - 01:56 #6
....iøvrigt mener Thor \'vindue2\' og ikke \'side2\' i sidste linje :)
Avatar billede jumper Nybegynder
03. februar 2001 - 21:32 #7
oles tilføjelse gør det lidt pænere, men jakoba rammer nu rigtigt ;)

Nogle versioner af NS4 har problemer med window referencer på tværs af window objekter når det oprindelige window objekt er lukket (minLilleBror peger så blot på variablen lilleBror på side1), men i det store og hele skulle det virke fint (og hvem bekymrer sig om NS-fejl efterhånden ? :)

/Thor
Avatar billede olebole Juniormester
03. februar 2001 - 21:59 #8
ehhhhhhh.......nå nej, det ved alle vel efterhånden!  *LOL*
Avatar billede jakoba Nybegynder
03. februar 2001 - 22:14 #9
Det gør jeg!!!
først satsedede jeg på PDP, VAX for det var gode maskiner.
så satsede jeg på Amigaen for det var bedre CPU og styresystem.
og nu Netscape.
Uhelbredeligt romantisk formoder jeg :)
Avatar billede olebole Juniormester
03. februar 2001 - 23:02 #10
hip, hip....og så det lange: \"NetScaaaaaaaaaaaaaaaaaaaaape\"...!!!  :))))
Avatar billede toni01 Nybegynder
05. februar 2001 - 13:10 #11
Tak for hjælpen hvordan vil i dele pointne?
Avatar billede jakoba Nybegynder
05. februar 2001 - 18:36 #12
Jumpers svar var fint og der er ikke såmeget at dele at det gør noget.
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