рони,
Логику понял, то есть мгновенного отрабатывание функции еще до загрузки страницы такого нет в js Просто прежде чем написать думал о том что изначально скрыть и показать если не было принято соглашение, но потом подумал что JS может справится |
Цитата:
|
Цитата:
<!doctype html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.terms_of_use {
transform: translateY(0);
position: fixed;
height: 70px;
width: 100%;
background-color: hsla(40, 100%, 30%, 1);
transition: .8s;
}
.terms_of_use.yes{
transform: translateY(-120%);
}
body.hide .terms_of_use{
display: none;
}
</style>
<script>
window.onload = function(){
const termsOfUse = document.querySelector(".terms_of_use");
const iAgree = document.querySelector(".i_agree");
if (!localStorage.getItem("hiden")){
iAgree.onclick = function() {
termsOfUse.classList.add("yes");
localStorage.setItem("hiden", "abrakadabra")
}
}
}
</script>
</head>
<body>
<script>
if (localStorage.getItem("hiden")) document.body.classList.add("hide");
</script>
<div class="terms_of_use"><button class="i_agree">принять</button></div>
</body>
</html>
|
рони,
а что такое abrakadabra я понимаю что это какое то имя но за что оно отвечает, |
Сергей Ракипов,
тут может быть любое значение(строка) которое в if вернёт true. метка, что согласие получено.
alert(Boolean("abrakadabra"));
|
Цитата:
|
кто такой localStorage
https://developer.mozilla.org/ru/doc...w/localStorage как записать в storage https://developer.mozilla.org/ru/doc...torage/setItem как взять из storage https://developer.mozilla.org/ru/doc...torage/getItem и того:
// если нет в хранилище записи с ключем hiden
if (!localStorage.getItem("hiden")){
// слушатель на кнопку
iAgree.onclick = function() {
termsOfUse.classList.add("yes");
// запишем в хранилище запись с ключем hiden
localStorage.setItem("hiden", "abrakadabra")
}
}
// если в хранилище нет записи hiden, да даже если она есть и оно НЕ!! пустое (""), потому оно и abrakadabra, чтобы не было пустым
// выставим класс
if (localStorage.getItem("hiden")) document.body.classList.add("hide");
|
Наверное все-таки sessionStorage.
|
SuperZen,
Нравится таки объяснения, спасибо |
| Часовой пояс GMT +3, время: 00:01. |