Avatar billede lordnelson Seniormester
04. januar 2007 - 13:54 Der er 8 kommentarer og
1 løsning

En hård nød , reloade en side når vinduet lukkes IGEN

Hej
Har nu fundet ud af hvorfor dette ikke virker:
<a href="#" onClick="opener.location.reload(true);self.close();">Luk slave og opdater master</a>
Det er fordi jeg fra hovedsiden åbner et vindue søger om noget lukker vinduet og åbner et andet vindue, så er det jo klart at
<a href="#" onClick="opener.location.reload(true);self.close();">Luk slave og opdater master</a>
Ikke virker.......... Tanke torsk
Men er der så en måde at gøre det på altså i linket til at lukke vinduet skal der lige ledes være en funktion eller lign der kan reloade hovedsiden. Godt nok lidt langt ude men spørger nu alligevel.

Hilsen
LN
Avatar billede htm Nybegynder
04. januar 2007 - 21:25 #1
Hva er det lige der er galt med din metode? http://munchi.dk/exp/753908/

Hvis ikke dit eks. gør arbejdet, så forstår jeg vist ikke dit spørgsmål :)
Avatar billede lordnelson Seniormester
04. januar 2007 - 23:11 #2
Kan jo ikke bruge
<a href="#" onClick="opener.location.reload(true);self.close
Når vinduet bliver åbnet fra et andet vindue der er lukket

Det jeg vil reloade er den side hvor det første vindue blev åbnet
eller bare default siden, lige meget hvilken bar jeg for reloadet
selve hovedsiden

LN
Avatar billede psykochicken Nybegynder
05. januar 2007 - 15:34 #3
en husmandsløsning kunne være at vente med at lukke 1.ste popup til du lukker nr. 2 - og placere pop2 direkte oven på pop1, så den ikke kan ses:

Hovedsiden - åbner pop1:
<a href="pop1.php" onclick="window.open(this.href,'sub','width=200,height=200,top=0,left=0');return false;">åbn pop1</a>

pop1 - åbner pop2:
<a href="pop2.php" onclick="window.open(this.href,'sub2','width=200,height=200,top=0,left=0');return false;">åbn pop2</a>

pop2 - reloader hovedsiden, lukker pop1 og sig selv:
<a href="#" onclick="opener.opener.location.reload(true);opener.close();self.close();">luk og reload</a>

/psc
Avatar billede lordnelson Seniormester
05. januar 2007 - 16:15 #4
Har løst det på en anden måde
ved ikke at lukke vinduet men bruge en dynamsik resize af vinduet
så vinduet passer med det nye indhold

Men stadig et lille problem linket kommer fra en Iframe så det er Iframen der bliver opdateret kan man ongåes dette?

LN
Avatar billede psykochicken Nybegynder
05. januar 2007 - 19:12 #5
for at opdatere hovedsiden i stedet for iframen kan du bruge:
opener.top.location.reload(true)

/psc
Avatar billede lordnelson Seniormester
06. januar 2007 - 10:20 #6
For fejl hvis jeg bruger
    <a href="#" onClick="opener.top.location.reload(true);self.close();">
men ikke fejl hvis jeg bruger
<a href="#" onClick="opener.location.reload(true);self.close();">

Den sidste opdatere så min iframe , ved den første med top kommer der en fejl på linket og der sker ikke noget, lukker heller ikke.

LN
Avatar billede lordnelson Seniormester
06. januar 2007 - 10:21 #7
Lige noget mere

Fejlen er "Tilladelse nægtet"

LN
Avatar billede lordnelson Seniormester
06. januar 2007 - 11:09 #8
Har selv fundet ud af det med
function closeWindow() {
  setTimeout("window.opener.parent.location.reload(true);",500);
  setTimeout("window.close();",750);
}

Hilsen
LN
Avatar billede psykochicken Nybegynder
06. januar 2007 - 14:50 #9
..om du bruger top eller parent burde i denne sammenhæng give samme resultat, så måske havde der sneget sig en anden fejl ind.
forskellen på top og parent:
Parent er den nærmeste "forfader" til iframen.
Top er hovedsiden uanset hvor mange frames/iframes du måtte have.

Blot for at være nysgerrig. Hvorfor skal der ventes ½ sekund før den begynder at reloade hovedsiden ?

/psc
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