Avatar billede visto Guru
22. juni 2001 - 16:44 Der er 15 kommentarer og
2 løsninger

Åbne nyt vindue i Netscape

Hvordan laver man et javascript, der for brugere af Netscape før version 6 åbner et nyt vindue med en bestemt webside?
Det nye vindue skal åbnes, når webstedet indlæses.
Det skal helst være muligt at bestemme det nye vindues størrelse.
Jeg ved meget lidt om javascript, kan ikke selv skrive, så jeg har brug for en ret skudsikker kode.

Avatar billede Slettet bruger
22. juni 2001 - 16:46 #1
Avatar billede visto Guru
22. juni 2001 - 16:52 #2
Der er da noget, der måske bruges, men jeg aner ikke hvad jeg skal skrive, for at vinduet åbnes KUN for Netscapebrugere før version 6, og at det sker automatisk, når mit websted åbnes i denne browser.
Avatar billede Slettet bruger
22. juni 2001 - 16:54 #3
Avatar billede olebole Juniormester
22. juni 2001 - 16:56 #4
<ole>
if (document.getElementById && !document.all) {
  window.open(\"side.html\",\"ny\",\"height=150,width=400..........osv.........\")
}
/mvh
</bole>
Avatar billede engrob Nybegynder
22. juni 2001 - 17:46 #5
Ehm, ole, tror du ikke det skulle være if (document.layers) ?
Avatar billede jakobandersen Nybegynder
22. juni 2001 - 17:50 #6
Nej.. det skal det ikke.

Netscape 6 er ikke bagudkompatibel med document.layers og for ikke at få vinduet til at åbne i Explorer siger ole:

Hvis browseren understøtter getElementById og IKKE document.all så åbnes vinduet.
Avatar billede engrob Nybegynder
22. juni 2001 - 18:10 #7
Det er jo også brugerne før NS6, der skal have åbnet et vindue. Altså det der hedder document.layers.
Avatar billede jakobandersen Nybegynder
22. juni 2001 - 18:16 #8
ahh. undskyld jeg læste ikke lige spørgsmålet ordentligt. du har ret:

<ole>
if (document.layers) {
  window.open(\"side.html\",\"ny\",\"height=150,width=400..........osv.........\")
}
Avatar billede olebole Juniormester
22. juni 2001 - 18:17 #9
Undskyld...!!! Jeg sidder og læser spørgsmålet helt forkert  :o))
Selvfølgelig er det:

f (document.layers) {
  window.open(\"side.html\",\"ny\",\"height=150,width=400..........osv.........\")
}

Tak, engrob  :o)
Avatar billede engrob Nybegynder
22. juni 2001 - 18:22 #10
Det er okay. Forstod det heller ikke selv helt først :)
Avatar billede visto Guru
22. juni 2001 - 20:35 #11
Nogle koder som jeg fandt på builder.dk - tak til space - klarede browser-detect.
{
window.open(\"side.html\",\"ny\",\"height=150,width=400..........osv.........\")
}
klarede at få åbnet vinduet - tak moonduck.

Som jeg nævnte i begyndelse ved jeg meget lidt om javascript, så jeg famler mig frem efter try and error princippet. Og det jeg har lavet nu virker sådan set (selv om Netscape melder ulovlig handling, hvis jeg reloader).
Men jeg har ikke haft brug for det der med
if (document.layers)
som I gik så meget op i.
Hvilken funktion skulle det have?

I får også lige koden, som I er velkomne til at kommentere, for den er næppe helt stueren :-)

<script language=\"JavaScript\">
<!--
function browserName() {

  if (navigator.appName == \"Netscape\")
    return 2;
}
function browserVersion()
{
  return parseFloat(navigator.appVersion)
}
var intName = browserName();
var intVersion = browserVersion();
if ((intName == 2) && (intVersion <= 4.9))
{
  window.open(\"side.htm\",
  \"Ny\",\"height=150,width=400\")
}
// -->
</script>
Avatar billede engrob Nybegynder
22. juni 2001 - 22:11 #12
Du kan bare nøjes med som olebole skriver at gøre sådan her:

<script type=\"text/javascript\" language=\"javascript\">
<!--
if (document.layers) {
  window.open(\"side.html\",\"ny\",\"height=150,width=400\")
}
//-->
</script>

Læg det imellem <head> og </head> og hvis man bruger netscape under 6, så åbnes et nyt vindue.
Hvis det er meget vigtig at det også skal virke i ns3 og under, så skal du have lidt mere med
Avatar billede visto Guru
22. juni 2001 - 23:22 #13
Til engrob: Det du nævner kunne jeg ikke få til at virke, så jeg tror at jeg arbejder videre med den løsning jeg delvis har fået til at virke: Der åbnes et nyt vindue, men jeg får fejlmeldingen \"404 - Document not found\". Jeg har selvfølgelig uploadet den side, der skal åbnes, men måske jeg skriver forkert adresse. Jeg har prøvet både med den fulde http://....adresse og så blot \"../side.htm\", men intet virker.
Hvad gør jeg forkert?
Avatar billede jakobandersen Nybegynder
22. juni 2001 - 23:23 #14
Kan vi se en URL?
Avatar billede olebole Juniormester
22. juni 2001 - 23:33 #15
Hmmmmm... \'.htm\' eller \'.html\'
Check både dit script og dit aktuelle fil-navn.
Avatar billede visto Guru
23. juni 2001 - 00:20 #16
Jeg har nu knækket den sidste del af nøden.
Det handlede om, at jeg havde linket den nye side, der skal åbnes, til et eksternt stylesheet. Uden forbindelse til stylesheet er alt OK.

Tak for hjælpen!
Avatar billede olebole Juniormester
23. juni 2001 - 00:26 #17
Det er ikke fejlen. Du kan sagtens inkludere et stylesheet i et popUp-dokument - men hvis vi ikke kan komme til at se eksemplet, er det jo svært at rette din fejl.
/mvh
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