cookies自定义弹窗怎么实现
时间: 2024-05-13 17:15:41 浏览: 10
要实现自定义的cookie弹窗,你可以按照以下步骤进行:
1. 创建一个弹窗的HTML结构,包含必要的文本和按钮。
2. 使用CSS样式表对弹窗进行样式设置,使其看起来美观并与你的网站风格保持一致。
3. 使用JavaScript编写逻辑代码,以便在用户访问网站时弹出弹窗。
4. 在JavaScript代码中设置cookie,以便记录用户的同意或拒绝。
下面是一些示例代码,帮助你起步:
HTML结构:
```html
<div class="cookie-popup">
<p>我们使用cookies来提供更好的用户体验。请点击“同意”以继续浏览我们的网站。</p>
<button class="cookie-agree">同意</button>
<button class="cookie-disagree">拒绝</button>
</div>
```
CSS样式表:
```css
.cookie-popup {
position: fixed;
bottom: 0;
left: 0;
right: 0;
background-color: #f1f1f1;
padding: 20px;
text-align: center;
}
.cookie-popup p {
margin: 0;
}
.cookie-popup button {
background-color: #4CAF50;
color: white;
border: none;
padding: 10px 20px;
margin: 10px;
cursor: pointer;
border-radius: 5px;
}
.cookie-popup button:hover {
opacity: 0.8;
}
.cookie-agree {
background-color: #4CAF50;
}
.cookie-disagree {
background-color: #f44336;
}
```
JavaScript代码:
```javascript
// 检查是否存在cookie
function checkCookie() {
var cookieEnabled = navigator.cookieEnabled;
if (!cookieEnabled){
document.cookie = "testcookie";
cookieEnabled = document.cookie.indexOf("testcookie")!=-1;
}
return cookieEnabled;
}
// 显示弹窗
function showPopup() {
var popup = document.querySelector('.cookie-popup');
popup.style.display = 'block';
}
// 隐藏弹窗
function hidePopup() {
var popup = document.querySelector('.cookie-popup');
popup.style.display = 'none';
}
// 设置cookie
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires="+ d.toUTCString();
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}
// 获取cookie
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i <ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
// 检查cookie是否存在
if (!checkCookie()) {
showPopup();
}
// 添加cookie事件
var agreeButton = document.querySelector('.cookie-agree');
var disagreeButton = document.querySelector('.cookie-disagree');
agreeButton.addEventListener('click', function() {
setCookie('cookie-agreed', 'true', 30);
hidePopup();
});
disagreeButton.addEventListener('click', function() {
setCookie('cookie-agreed', 'false', 30);
hidePopup();
});
```
请注意,这只是一个简单的示例代码,你需要根据自己的需求进行修改和定制。