Я изучаю JavaScript, и я вижу, что этот вопрос задавался много раз, но я не могу заставить это работать для меня. Что я хочу сделать, покажите загрузочный модальный раз в день.set cookie на странице, чтобы показать всплывающее окно bootstrap один раз в день
То, что я до сих пор:
function setCookie(cookiename, cookievalue, expdays) {
var d = new Date();
d.setTime(d.getTime()+(expdays * 24 * 60 * 60 * 1000));
var expires = "expires=" + d.toGMTString();
document.cookie = cookiename + "=" + cookievalue + "; " + expires;
}
function getCookie(cookiename) {
var name = cookiename + "=";
var ca = document.cookie.split(';');
for(var i = 0; i < ca.length; i++) {
var c = ca[i].trim();
if (c.indexOf(name) == 0) return c.substring(name.length, c.length);
}
//I want to check if there is a cookie.
//if I have not set a cookie, I want to show my modal,
//if there is a cookie then return;
//The cookie should expire in one day.
function checkCookie() {
var showed = getCookie("showed");
if (showed != null && showed != "") {
var date = new Date(showed).getDate();
var currentDate = new Date().getDate();
if (currentDate > date) {
return true;
}
return false;
}
return true;
}
Теперь, если я изменить последнее возвращение истинного; вернуть false; мой модальный не появляется. Теперь я вижу модальный каждый раз. Что я делаю неправильно? Как я могу это исправить?
Можете ли вы опубликовать способ, которым вы устанавливаете cookie? – misterwolf
Я установил cookie в свою функцию setCookie – NewDev
да, но что такое инструкция? , потому что я проверил ваш код и все выглядят хорошо. Я не думаю, что у вас проблема с датой! – misterwolf