Avatar billede ulrikhjul Nybegynder
28. februar 2004 - 23:26 Der er 7 kommentarer

Popup på undersider.

Hej.
Jeg skal have en popup til at "poppe" på alle undersider på en hjemmeside, men der er ret mange undersider, så kan man ikke gøre noget for at den popper op alle steder (Bare een gang - ikke flere gange oveni hinanden)??

Tak for det!
Avatar billede roenving Novice
28. februar 2004 - 23:31 #1
En popup, som kommer, uden brugeren har bedt om det ?-)

Gør det kun sjældent, selv ville jeg blive skræmt væk, hvis jeg opdagede, at min popupstopper havde fjernet sådan en fætter ...

Men hvis du vil begrænse det til een:

Lyder som om du skal en tur i kagebutikken ...

Sæt en cookie første gang, og aflæs om cookien er sat !-)

-- har en maskine liggende ...
Avatar billede ulrikhjul Nybegynder
28. februar 2004 - 23:51 #2
Tak for det roenving, men jeg er ikke så meget en haj til det der...
1. hvordan gør jeg så den popper op på alle undersider?
2. hvordan får jeg den til at lægge en cockie, så den ikke åbner hver gang brugeren skifter side??
Avatar billede roenving Novice
29. februar 2004 - 00:10 #3
Hvis du kun vil have den frem een gang, for hver gang brugeren er der, lægger du en (næsten !-) anonym cookie, altså uden udløbsdato, for så vil den blive slettet, når browseren lukkes ...

-- Hvis dine undersider er skrevet som selvstændige html-filer, er det svært at undgå at lægge koden ind alle steder, men du kan da optimere det med en .js-fil, som kaldes, så eventuelle senere ændringer ikke skal skrives ind i hver enkelt fil !o]

init.js skal indeholde javascript-kode (ikke <script>-tags), og du kan så kalde den med:

<script type="text/javascript" src="init.js"></script>

F.eks. kan du så lægge en init()-funktion i filen, som kaldes fra body onload:

<body onload="init()">
Avatar billede ulrikhjul Nybegynder
29. februar 2004 - 00:58 #4
Hej igen.
Siden er faktisk skrevet i PHP - min fejl, at jeg ikke skrev det fra starten af. (kun popuppen er html.)
Sorry - men gør det ikke tingene nemmere?
Avatar billede roenving Novice
29. februar 2004 - 01:06 #5
Såvidt jeg har forstået, har php en række cookie-funktioner, som alt andet lige bør gøre det en del lettere, men dem har jeg ikke overblik over ...

-- men du kan da så aflæse cookien hver gang, og hvis den ikke er der, skrive en popup-kode (og en cookie !-)

<?php
if(et_eller_andet_server_variables_eller_noget_COOKIE('popup'){
  echo "<script type='text/javascript'>\n";
  echo "window.open('popup.html','popup','width=400,height=300,status=no')\n";
  echo "</script>";
  et_eller_andet_server_variables_eller_noget_COOKIE('popup','true');
}
?>
Avatar billede pondo Nybegynder
05. marts 2007 - 08:56 #6
Nu du bruger PHP hvad så med at bruge SESSION ? du kunne smide en session variabel f.eks popup_set = 0, og så sætte den til 1 når popup er set. så smider du din popup i en if sætning hvor du tjekker variablens værdi .

Noget i den her stil :
<?php

session_start();

if(!isset$_SESSION['popup_set'])
{
    ?> Din html popup kode <?php
    $_SESSION['popup_set'] = 1;
}


?>

På den måde vises din popup kun en gang og det er kun for en kort tid (kan huske om det er til browser lukkes) din popup er blokeret.
Avatar billede pondo Nybegynder
05. marts 2007 - 08:58 #7
smid evt den kode jeg smed i en seperat php fil og smid derefter en include(php-fil); på alle dine undersider.
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