Avatar billede jayo Nybegynder
25. februar 2002 - 17:00 Der er 4 kommentarer og
2 løsninger

Pop-up i JavaScript

Hej,
Jeg skal have lavet et JavaScript pop-up vindue på en af mine siden. Jeg har koden som skal indsættes i <body>, men der er forskellige funktioner jeg ikke har helt styr på:

Pop-up vinduet indeholder et produkt, og mine kunder kan enten vælge "nej tak" hvis de ikke vil lægge produktet i kurven. Vinduet skal så bare lukkes og der sker ikke mere. Denne kode er jeg også ok med.

Derudover kan de vælge "læg i kurv" - hvis denne vælges, skal pop-up vinduet lukkes og det originale vindue skal sendes videre til en anden URL, hvor jeg har mere information om produktet. Hvordan gør jeg det??

Derudover vil jeg gerne lave det således, at pop-up vinduet kun dukker op første gang personen læser siden ind (dvs. hvis siden reloades skal pop-up vinduet ikke komme op igen). (Jeg arbejder på en ASP-server, hvis det er nogen hjælp...).

Giver gerne flere point for en god løsning...

Mange tak

-jayo
Avatar billede ras2000 Nybegynder
25. februar 2002 - 17:24 #1
Jeg mener du kan sende videre ved hjælp af opener, en referance til den side der åbnede din pop-up.
onclick="opener.location.href='nyurl.htm'"
Det med at det kun sker kan vel klares med en cookie, som udløber når du mener der er tale om et nyt besøg, eksempelvis en dag efter.
Alternativt kan det klares med en session variabel, som du definerer i din global.asa fil.
Begge dele er temmelig enkle.
Avatar billede emileej Nybegynder
25. februar 2002 - 22:53 #2
Det er rigtigt hvad ras2000 skriver - for at male det lidt mere ud:
i <head> :

var theId=6; //id - til at identificere varen

function noThanks(){
    window.close();
}

function yesPlease(){
    opener.location.href="basket.asp?id="+theId;
    window.close();
}

i <body> :

<a href="java script:yesPlease();">Læg i kurv</a><br>
<a href="java script:noThanks();">Nej tak</a>


E-)mil
http://mfp.eej.dk
http://eej.dk
Avatar billede jayo Nybegynder
26. februar 2002 - 09:01 #3
ok, det ser godt ud, jeg forsøger det så snart jeg kan... kan jeg eventuelt udelade denne linie: var theId=6; //id - til at identificere varen? Den URL jeg sender folk til er specifik til denne vare, så jeg behøver ikke vare-id her.

-jayo
Avatar billede ras2000 Nybegynder
26. februar 2002 - 09:36 #4
Det sidste spørgsmål forstod jeg ikke. Hvor er den linie henne?
Avatar billede ras2000 Nybegynder
26. februar 2002 - 09:57 #5
Hov nu fik jeg læst det.
Det kommer jo an på hvordan du har bygget din indkøbskurv op. De fleste ville gøre det med en database af en art, og så have unikke id'er for alle varer. Når man så vælger en vare, gemmer man id og antal i databasen. Men hvis du har et andet system behøver du vel ikke id'et.
Systemet med at sørge for at det kun sker en gang, kan klares ved at definerer en session variabel i din global.asa fil ved at føje denne linie til:
Sub Session_OnStart
  Session("popup") = 0
End Sub
Og denne linie i din popup:
<%Session("popup") = 1%>

Og denne linie i din hovedside:
<%If Session("popup") = 0 then%>
.. og så koden til at åbne din popup.
...<%End if%>
Det er i vbscript.
Avatar billede emileej Nybegynder
26. februar 2002 - 19:56 #6
Ja det var svaret på delspørgsmålet :)
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