JavaScripts > Fenster > Script-Detail: PopUp-Aufruf mit Cookie steuern
PopUp-Aufruf mit Cookie steuern
Dieses Script sorgt dafür, dass ein PopUp innerhalb eines bestimmten Zeitraumes nur einmal aufgerufen wird. Als Erkennungsmöglichkeit arbeitet hier ein Cookie.Wer kennt sie nicht? Die PopUps, die sich bei jedem Aufruf einer neuen Seite öffnen. Meist sind es Werbezwecke und will man dann auch noch selber eines erstellen.
Oder man will an sich selber ein PopUp erstellen, aber verhindern, dass es sich bei jedem neuen Aufruf der Seite wieder öffnet.
Hierzu ist das Script geradezu optimal: Es setzt einen Cookie, in dem gespeichert wird, ob und wann das PopUp aufgerufen wurde. Bei jedem Versuch, das PopUp zu öffnen, wird vorher getestet, ob ein Cookie gesetzt wurde und ob er gültig ist. Ist er dies, so wird das PopUp NICHT GEÖFFNET...
Füge folgenden Code in den
| Code: |
<head>...</head> |
| Code: |
<SCRIPT LANGUAGE="JavaScript">
<!-- var expDays = 2; var page = "popup.html"; var windowprops = "width=340,height=380,left=0,top=0,location=no,toolbar=no,menubar=no,scrollbars=no,resizable=yes"; function checkCount() { var count = GetCookie('count'); if (count == null) { count=1; SetCookie('count', count, exp); window.open(page, "", windowprops); } else { count++; SetCookie('count', count, exp); } } function GetCookie (name) { var arg = name + "="; var alen = arg.length; var clen = document.cookie.length; var i = 0; while (i < clen) { var j = i + alen; if (document.cookie.substring(i, j) == arg) return getCookieVal (j); i = document.cookie.indexOf(" ", i) + 1; if (i == 0) break; } return null; } function getCookieVal(offset) { var endstr = document.cookie.indexOf (";", offset); if (endstr == -1) endstr = document.cookie.length; return unescape(document.cookie.substring(offset, endstr)); } function SetCookie (name, value) { var argv = SetCookie.arguments; var argc = SetCookie.arguments.length; var expires = (argc > 2) ? argv[2] : null; var path = (argc > 3) ? argv[3] : null; var domain = (argc > 4) ? argv[4] : null; var secure = (argc > 5) ? argv[5] : false; document.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : ""); } var exp = new Date(); exp.setTime(exp.getTime() + (expDays*24*60*60*1000)); //--> </script> |
Der Großteil des Codes ist wegen dem Cookie, das wichtige für den User findet man unter
| Code: |
var expDays |
| Code: |
var page |
| Code: |
var windowprops |
Unter
| Code: |
var expDays |
| Code: |
var page |
Und als letztes gibt
| Code: |
var windowprops |
Hat man sich jedoch da durch gekämpft, funktioniert das wunderbar :)
Code gefunden auf http://www.drweb.de
Geschrieben von Phil Marx am 18.06.2004 (4721x gelesen)
