Det kan gøres sådan her:
Først et javascript, der genererer en cookie på brugerens computer når popup'en har været vist én gang:
<script LANGUAGE="JavaScript">
<!-- Begin
var page = "/help/popup.aspx";
var windowprops "width=700,height=500,location=no,toolbar=no,menubar=no,scrollbars=yes,resizable=no";
var closing;
function slut(){
if(document.cookie.length!=0){
if(document.cookie.indexOf('popupSeen=yes')<0){
var exp = new Date();
exp.setTime(exp.getTime() + 1000*60*60*24);
document.cookie = "popupSeen=yes;expires="+exp.toGMTString()+";path=/";
window.open(page, "", windowprops);
}
}
}
// End -->
</script>
Bemærk at dette script er skrevet til en .net løsning, hvor der altid vil være en cookie - det er muligt det skal trimmes lidt til andre løsninger.
Dernæst en aktivering af scriptet ved unload:
<body OnLoad="closing=true" OnUnLoad="if (closing) slut();">
Problemet er, at onUnload eventet bliver fyret hver gang brugeren klikker på et link på sitet, når brugeren trykker på tilbage knappen eller genindlæser siden. Det kan man ikke gøre så meget ved, men kan kan sikre at så længe brugeren bevæger sig rundt på ens eget site via almindelige links, så ser der ikke noget. Det sker gennem closing variablen. Hver gang man laver et internt link sætter man closing til false:
<a onClick='closing=false'
Håber du kan bruge det. Det er som sagt implementeret på
www.kursusmaterialer.dk, hvor du kan teste hvor godt du syntes det virker.
Jeg har set software der tilbyder at kunne gøre det bedre, men jeg ved ikke hvordan de gør det...
God fornøjelse.