Avatar billede rasmus_a Nybegynder
01. marts 2005 - 17:57 Der er 23 kommentarer

popup script fejl

Hey

Hvorfor virker dette script kun i nogle browsere?
(fra min .js fil)


function PopUp(site,xx,yy)
{
msgWindow=window.open(site,"displayWindow",
"toolbar=no,width=" + xx + ",height=" + yy + ",directories=no,status=no,scrollbars=yes,resize=no,menubar=no")
}

Mine links ser sådan her ud:

<a href="java script:PopUp('popup.htm','200','200');">POP POP POP UP</a>

?
Avatar billede Slettet bruger
01. marts 2005 - 18:05 #1
Skal du ikke lave:

<a href="java script:PopUp('popup.htm','200','200');">POP POP POP UP</a>

om til:

<a href="#" onClick="java script:PopUp('popup.htm','200','200');">POP POP POP UP</a>

--
pacroon
Avatar billede rasmus_a Nybegynder
01. marts 2005 - 18:18 #2
FireFox re-loader bare siden. Men det virker i Safari.. (men det gjorde det også før)
(Mac)

Andre forslag?
Avatar billede Slettet bruger
01. marts 2005 - 18:21 #3
Tja:

function openBrWindow(theURL,winName,features) {
  window.open(theURL,winName,features);
}

<a href="#" onClick="openBrWindow('popup.htm','','width=200,height=200')">POP POP POP UP</a>

... det er hvad Dreamweaver foreslår.
Avatar billede rasmus_a Nybegynder
01. marts 2005 - 19:10 #4
virker heller ikke i alle browsere..
Avatar billede roenving Novice
03. marts 2005 - 12:51 #5
-- hvorfor ikke bare direkte:

<a href="#" onClick="window.open('popup.htm','Pop','width=200,height=200');return false;">POP POP POP UP</a>

-- window.open burde virke i alle browsere ...

-- men afhængig af dine indstillinger omkring popups, kan det være, at de bliver blokeret !-)
Avatar billede olebole Juniormester
03. marts 2005 - 13:03 #6
<ole>

Alle de viste forslag virker fint. Der er ikke tale om browser-inkompatibillitet, men om, hvorvidt brugerne bruger popUp-killer eller ej - og så er roenvings seneste bedst.

/mvh
</bole>
Avatar billede rasmus_a Nybegynder
03. marts 2005 - 15:22 #7
roenving's version virker ikke i Safari (Mac) men virker fint i IE etc (PC). De andre virker fint i Safari (Mac) men ikke i FireFox/IE (PC). Jeg har lige testet det og jeg har fundet flere sider, hvor popup links virkede perfekt i ALLE browsere (PC+Mac).
Altså er det ikke popup blockers der er problemet.
Avatar billede olebole Juniormester
03. marts 2005 - 15:42 #8
Sludder og vrøvl  :)
Disse fungerer helt fint i Moz og IE under Windows:

<script type="text/JavaScript">
function PopUp(site,xx,yy) {
    msgWindow = window.open(site,"displayWindow", "toolbar=no,width=" + xx + ",height=" + yy + ",directories=no,status=no,scrollbars=yes,resize=no,menubar=no")
}
</script>
<a href="java script:PopUp('http://www.google.com','200','200')">POP POP POP UP</a><br><br>
<a href="#" onClick="java script:PopUp('http://www.google.com','200','200');">POP POP POP UP</a><br><br>

<script type="text/JavaScript">
function openBrWindow(theURL,winName,features) {
  window.open(theURL,winName,features);
}
</script>

<a href="#" onClick="openBrWindow('http://www.google.com','','width=200,height=200')">POP POP POP UP</a>
Avatar billede olebole Juniormester
03. marts 2005 - 15:50 #9
- det er så til gengæld noget 'slam' at bruge JavaScript pseudo-protokollen i en event-handler, som pacroon viste (onclick="java script: ... ") - men det er ikke noget, der kan være fatalt.
Avatar billede rasmus_a Nybegynder
03. marts 2005 - 20:57 #10
Altså jeg sætter pris på din indsats men de virker simpelthen ikke i alle browsere. :)
Dette script virker dog i ALLE browsere (PC+Mac). Har prøvet på 4 forskellige computere nu og dette er det eneste der har bestået alle tests.
http://www.newstoday.com/ntb/ntb.php?id=73 (klik på "amazing poster-stunt" linket et par linier nede)
Tak.
Avatar billede olebole Juniormester
03. marts 2005 - 21:16 #11
Så må du løfte sløret for hvilke, der ikke virker, hvor.
Som jeg skriver, fungerer de fint i Moz og IE under Win - og jeg kan roligt tilføje Opera. Desuden ved jeg positivt, de fungerer i NS2+ og IE3+ under MacOS.

At dette - der er helt banalt JavaScript fra version 1.0 og op - ikke skulle virke i visse browser/platforms kombinationer lyder mindre sandsynligt end, at jorden skulle være ottekantet  :)
Avatar billede rasmus_a Nybegynder
03. marts 2005 - 21:20 #12
Har desværre ikke adgang til en PC lige nu men de virker alle i Safari på men ikke i Moz (Mac).
Desuden har jeg oplevet de åbner et nyt vindue men ikke i de rigtige dimensioner. Bare et "_blank". Skal nok teste det igennem i morgen så du kan få detaljerne! :)
Avatar billede olebole Juniormester
03. marts 2005 - 21:20 #13
... og det mest morsomme er, at det script, du henviser til, gør præcis det samme, som de andre  :)
Avatar billede rasmus_a Nybegynder
03. marts 2005 - 21:25 #14
Moz på Mac har det svært med href="#" åbenbart.. den genindlæser bare siden som om onClick ikke eksisterer... :/
anyways, jeg vender tilbage så du kan få et ordentligt svar. men ja, det er mystisk!
Avatar billede olebole Juniormester
03. marts 2005 - 21:32 #15
Nej, ikke når man returnerer false i onklick-handleren. Så kan der stå, hvad somhelst i href'en - da linket's default handling aldrig afvikles  ;o)

Det har jeg overset i disse script-kald - og det kan godt være visse obskure browsere brokker sig over det. Du skal blot kalde med:
  <a href="#" onclick="PopUp('http://www.google.com','200','200');return false">test</a>
Avatar billede olebole Juniormester
03. marts 2005 - 21:36 #16
Du kan også skrive sådan:
  <a href="http://www.google.com" onclick="PopUp(this.href,'200','200');return false">test</a>

- hvor du blot henter URL'en i href'en. På den måde får søgemaskinerne øje på URL'en og indekserer siden bag linket (vigtigt, hvis det er lokalt) - og samtidig vil linket virke i en browser, hvor JS er disabled.
Avatar billede Slettet bruger
03. marts 2005 - 21:53 #17
Olebole > Jeg beklager slamkoden, men jeg viste ham også kun et allerede lavet eksempel, ikke noget jeg selv havde bikset.. heldigvis :)
Avatar billede olebole Juniormester
03. marts 2005 - 22:07 #18
hehe ... alt forladt  ;o)
Avatar billede rasmus_a Nybegynder
03. marts 2005 - 23:35 #19
ah olebole der kan du have fat i den ende! som sagt, jeg tester i morgen :D tak for hjælpen indtil videre.
Avatar billede olebole Juniormester
03. marts 2005 - 23:45 #20
Jeg er Toyota-sikker ... 112%  ;o)
Avatar billede rasmus_a Nybegynder
04. marts 2005 - 15:57 #21
Yes så har jeg testet med følgende:

.js fil
------
function PopUp(site,xx,yy) {
    msgWindow = window.open(site,"displayWindow", "toolbar=no,width=" + xx + ",height=" + yy + ",directories=no,status=no,scrollbars=yes,resize=no,menubar=no")
}


link
----
<a href="bus.swf" onclick="PopUp(this.href,'200','200');return false">


Dette virker i Safari (Mac) men ikke i IE (PC) og i Moz (Mac). Den viser filen men ikke i et nyt vindue men blot i samme vindue. (De bliver eksekveret fra en iFrame)

Dette er dog det eneste script som rent faktisk viser filen i samtlige browsere. Men altså ikke i Popup vinduer..
Avatar billede rasmus_a Nybegynder
04. marts 2005 - 15:58 #22
når jeg skriver "blot i samme vindue" mener jeg inde i iFramen.. Men om det bliver eksekveret fra en iframe eller fra en alm. "ren" side skulle ikke gøre forskel.
Avatar billede rasmus_a Nybegynder
05. marts 2005 - 16:19 #23
shit, smid et svar olebole.. der var et ' efter "return false"..
tak!! :D
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