mboost-dp1

Popup-problemer


Gå til bund
Gravatar #1 - XorpiZ
1. jul. 2008 14:45
Jeg har nu kæmpet med det her lort i et stykke tid nu, og jeg er ved at være godt gal :/

Jeg prøver at lave en simpel popup, der skal vises, når man trykker på et link.

Scriptet ser således ud:


<script type="text/javascript">
window.open("nykunde.html","nykunde","width=500,height=150")
</script>


Linket ser således ud:


<a href="""onclick=window.open('nykunde.html','nykunde');return false;"><img src="images/nykunde.jpg" border=0 width=215;height=215></a>


Den åbner også fint et nyt vindue - problemet er bare, at det er fullsize. Den åbner vinduet i en ny tab hos mig, og det er ikke helt optimalt :(
Gravatar #2 - XorpiZ
1. jul. 2008 14:54
Hov, lille tyrkfejl kan jeg se. Det er naturligvis onclick=" og ikke "onlick= :)
Gravatar #3 - karga
1. jul. 2008 14:59
Der er nok en tyrkfejl eller 2 mere, for det du har skrevet i linket, er da forkert..

Hvis det skal være noget skal det være
<a href="javascript: window.open('nykunde.
html','nykunde','width=500, height=150');"><img src="images/nykunde.jpg" style="border: 0px width:215px; height: 215px;"></a>


Eller hvis du ikke vil vise linket i urlen:
<a href=""# onclick="window.open('nykunde.
html','nykunde','width=500, height=150');return false;"><img src="images/nykunde.jpg" style="border: 0px width:215px; height: 215px;"></a>
Gravatar #4 - XorpiZ
1. jul. 2008 15:03
#3

Nu åbner vinduet slet ikke. Der sker ikke noget, når jeg klikker på billedet :/
Gravatar #5 - XorpiZ
1. jul. 2008 15:25
Og nu virker det af uvisse årsager.. Jeg fatter ikke webprogrammering, og det kommer jeg aldrig til. Men jeg siger tak, jeg brugte dit sidste eksempel :)
Gravatar #6 - karga
1. jul. 2008 19:17
Det skal lige siges, at det kan se ud som om vinduet ikke åbner i msie (ved ikke hvordan ff og safari opfører sig), hvis du har et vindue af samme navn åben allerede - f.eks. hvis du har åbnet linket før

Vinduets navn er det der står i andet parameter window.open('url','navn','andre parametre')
Gravatar #7 - Mandalae
1. jul. 2008 19:31
Bare lige for at du ikke sidder og laver underlige tegn i dine anchor tags så har karga skrevet forkert :)

<a href=""# onclick="window.open('nykunde.
html','nykunde','width=500, height=150');return false;"><img src="images/nykunde.jpg" style="border: 0px width:215px; height: 215px;"></a>


skal selvfølgelig være

<a href="#" onclick="window.open('nykunde.
html','nykunde','width=500, height=150');return false;"><img src="images/nykunde.jpg" style="border: 0px width:215px; height: 215px;"></a>


Ingen kritik..bare en trykfejl der er dum at føre videre :)
Gravatar #8 - karga
2. jul. 2008 08:59
Whoops :P det er lidt besværligt at kode når man er vant til at 23 farver hjælper en med syntaxen :)
Gravatar #9 - Windcape
3. jul. 2008 03:10
Og fjern den # , den er træls for brugeren !

Tilføj style="cursor: pointer;" for at sikre at IE viser en cursor (andre browsere er kloge nok til det i forvejen)

dvs.

<a href="" style="cursor: pointer;" onclick="window.open('nykunde.html','nykunde','width=500, height=150'); return false;"><img src="images/nykunde.jpg" style="border: 0px width:215px; height: 215px;"></a>
Gravatar #10 - karga
3. jul. 2008 06:09
Ehm.. href="" peger bare på det aktive dokument, hvilket kan være uforståeligt for visse brugere og forvirrer google (maybe)

Og jo, IE skal nok lave en pointer på linket, men hvorfor irriterer det dig at der er en anchor reference...? Det gør jo intet, når scriptet kører return false, så det ikke aktiveres..
Gravatar #11 - izym
11. jul. 2008 12:11
#10 Fordi man bliver sendt til toppen af siden? Brug javascript:void(0) i stedet for.
Gravatar #12 - karga
11. jul. 2008 12:20
#11 nej ikke ved return false i enden af funktionen.. så det er vel en smagssag
Gravatar #13 - Jonasee
11. jul. 2008 12:22
hvor ik fjerne href helt nu når I ikke bruger den.
Gravatar #14 - karga
11. jul. 2008 12:30
#13 personligt fordi mine links så ikke får den style de skal bruge.. da jeg styler mine links med a:link og ikke bare a, da a uden href kan være et anchor
Gravatar #15 - ipwn
16. jul. 2008 23:07
Eew, brug dog noget unobtrusive javascript i stedet for det der :) Og lad være med at spolere hjemmesiden for dem som ikke har javascript/har valgt ikke at bruge javascript.

Link:

<a id="NyKunde" href="nykunde-no-js.html">
<img src="images/nykunde.jpg" height="215" height="215">
</a>


Javascript:
(Gammeldags junk - overvej Prototype, jQuery eller mooTools hvis du skal lave mere - kan meget mere, og er titusinde gange lettere at skrive)


<script type="text/javascript">
/* Simpel windows.onload - istedet for at smide det i <body>
Halvdårlig metode... overvej bedre metode hvis mere JS
jQuery, prototype & mooTools har alle bedre metoder */
window.onload = function() {
/* Tjekker om browseren understøtter DOM
Fejler stille - siden vil køre uden JS */
if (!document.getElementById) return false;

/* Finder et element med id "NyKunde" */
var NyKunde = document.getElementById("NyKunde");

/* Hvis elementet findes, tilføj en onclick event */
if (NyKunde) NyKunde.onclick = function() {
/* Køres når der klikkes på elementet */
window.open("nykunde.html"
,"nykunde","width=500, height=150");
return false;
}
};
</script>


Ovenstående skulle virke i næsten alle browsere - dem det ikke virker i, fejler den stille, og så virker linket stadigvæk. Så kan du servere en side de kan se, uden det fancy stuff.

Læs evt. her, for en bedre popup end mit hurtige lavede crap :)
http://mar.anomy.net/entry/2004/02/09/12.17.47/
Gravatar #16 - ipwn
16. jul. 2008 23:15
Lige for at lokke dig med jQuery jeg bruger nu, det samme JS i jQuery:


$(function() {
$("#NyKunde").click = function() {
window.open("nykunde.html"
,"nykunde","width=500, height=150");
return false;
}
});
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login