Bonsoir à tous, me revoici avec un problème de javascript.
Je souhaite avoir un popup de vérification d'age lorsqu'un visiteur arrive sur le site que je suis en train de créer.
J'ai réussi à faire mon bonheur avec le code suivant:
Le soucis étant que bien sur, par défaut, le document.cookie reste actif que lorsque le visiteur ne ferme pas son navigateur. Hors, j'aimerai bien que ce dernier soit persistant. Au moins 1 mois (3 serai l'idéal).
J'ai essayé avec la fonction suivante en remplaçant dans mon code précédent document.cookie par setCookie:
ou encore:
Mais sans succès. Même pire, dès que je change de page, ce dernier reparait à l'écran. Que dois je modifier dans mon code du haut pour choisir la durée de vie du cookie. (Je ne sais pas si c'est utile de préciser, mais je suis actuellement en local sous Wamp).
Merci par avance.
edit: Bien sur, je ne sais pas si le javascript et la meilleur manière de gérer les cookies, mais je n'ai trouvé actuellement que cette solution à mon besoin (tout en étant très simple à déployer).
Modifié par westman (24 Jan 2022 - 21:55)
Je souhaite avoir un popup de vérification d'age lorsqu'un visiteur arrive sur le site que je suis en train de créer.
J'ai réussi à faire mon bonheur avec le code suivant:
$(function() {
$('[data-popup-close]').on('click', function(e) {
var targeted_popup_class = jQuery(this).attr('data-popup-close');
$('[data-popup="' + targeted_popup_class + '"]').fadeOut(350);
e.preventDefault();
});
});
$(function() {
if (!(document.cookie && document.cookie == "accepted")) {
$("#popup").show();
}
$('[data-popup-close]').on('click', function(e) {
var targeted_popup_class = jQuery(this).attr('data-popup-close');
$('[data-popup="' + targeted_popup_class + '"]').fadeOut(350);
document.cookie = "accepted";
e.preventDefault();
});
});
Le soucis étant que bien sur, par défaut, le document.cookie reste actif que lorsque le visiteur ne ferme pas son navigateur. Hors, j'aimerai bien que ce dernier soit persistant. Au moins 1 mois (3 serai l'idéal).
J'ai essayé avec la fonction suivante en remplaçant dans mon code précédent document.cookie par setCookie:
function setCookie(cName, cValue, expDays) {
let date = new Date();
date.setTime(date.getTime() + (expDays * 90 * 24 * 60 * 60 * 1000));
const expires = "expires=" + date.toUTCString();
document.cookie = cName + "=" + cValue + "; " + expires + "; path=/";
}
ou encore:
var a = new Date();
a = new Date(a.getTime() +1000*60*60*24*90);
document.cookie = 'cookie; expires='+a.toGMTString()+';';
Mais sans succès. Même pire, dès que je change de page, ce dernier reparait à l'écran. Que dois je modifier dans mon code du haut pour choisir la durée de vie du cookie. (Je ne sais pas si c'est utile de préciser, mais je suis actuellement en local sous Wamp).
Merci par avance.
edit: Bien sur, je ne sais pas si le javascript et la meilleur manière de gérer les cookies, mais je n'ai trouvé actuellement que cette solution à mon besoin (tout en étant très simple à déployer).
Modifié par westman (24 Jan 2022 - 21:55)