Pop up
Ik heb een div pop up gemaakt waarin staat dat mijn site gebruik maakt van cookies. Nu gaat dat allemaal prima alleen verschijnt deze pop up elke keer wanneer ik een pagina open. Dus als ik naar een andere pagina ga (of de pagina refresh) dan komt de pop up weer tevoorschijn. Wat ik wil is dat de bezoeker eenmalig de pop up ziet en wanneer hij/zij de pop up weg klikt deze niet meer getoond wordt. Weet iemand hoe ik dat doe? Zie de code tot nu toe:
In de head:
<script type="text/javascript" src="js/popup.js"></script>
<link href="css/popup_style.css" rel="stylesheet" type="text/css" />
In de body:
<body onload="popup('popUpDiv')">
<div id="blanket" style="display:none;"></div>
<div id="popUpDiv" style="display:none;">
<p>site.nl maakt gebruik van cookies doormiddel van Google Analytics</p>
<a href="#" onclick="popup('popUpDiv')"></a>
</div>
Alvast bedankt!
Gewijzigd op 22/11/2012 20:50:56 door Martijn jo
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
if (getCookie("cookiepopup_hide") == null) {
popup('popUpDiv');
}
function setCookie(c_name) {
var exdate = new Date();
exdate.setDate(exdate.getDate() + 365);
var c_value = escape('true') + ((365 == null) ? "" : "; expires=" + exdate.toUTCString());
document.cookie = c_name + "=" + c_value + ";path=/";
$('#cb').hide();
}
function getCookie(c_name) {
var i, x, y, ARRcookies = document.cookie.split(";");
for (i = 0; i < ARRcookies.length; i++) {
x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
x = x.replace(/^\s+|\s+$/g, "");
if (x == c_name) {
return unescape(y);
}
}
}
popup('popUpDiv');
}
function setCookie(c_name) {
var exdate = new Date();
exdate.setDate(exdate.getDate() + 365);
var c_value = escape('true') + ((365 == null) ? "" : "; expires=" + exdate.toUTCString());
document.cookie = c_name + "=" + c_value + ";path=/";
$('#cb').hide();
}
function getCookie(c_name) {
var i, x, y, ARRcookies = document.cookie.split(";");
for (i = 0; i < ARRcookies.length; i++) {
x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
x = x.replace(/^\s+|\s+$/g, "");
if (x == c_name) {
return unescape(y);
}
}
}
En in je popup welke je toont, maak je een link met een onClick event, verwijzend naar: setCookie('cookiepopup_hide');
Ik ga ervan uit dat popup het hele popupje opbouwt.
Gewijzigd op 22/11/2012 21:57:51 door - Ariën -
Martijn jo op 22/11/2012 20:48:07:
Weet iemand hoe ik dat doe? Zie de code tot nu toe:
Met een cookie :)
Omdat het om een functionele gaat, zou het volgens mij zonder problemen mogen.
Oh ja, in mijn script gebruik ik de Jquery lib.
In mijn html heb ik nu dit staan:
<body onload="popup('popUpDiv')">
<!--POPUP -->
<div id="blanket" style="display:none;"></div>
<div id="popUpDiv" style="display:none;">
<p>site.nl maakt gebruik van cookies doormiddel van Google Analytics</p>
<a href="#" onclick="setCookie('cookiepopup_hide');"></a>
</div>
<!-- POPUP-->
Als ik dit gebruik dan kan ik mijn popup niet meer sluiten. Als ik de onload eruit haal dan laat hij de hele pop up niet meer zien. Waar doe ik het fout?
Dank!
Wat doe je popup() functie precies, en heb je mijn code al gebruikt?
Laat eens relevante code of een voorbeeld zien.
Gewijzigd op 22/11/2012 22:57:53 door - Ariën -
Maar als ik dat verwijder dan gebeurd er helemaal niets. Ook als ik mijn cache clear.
Zie mijn vorige bericht....