我有一个问题,我有一个Zopim聊天和cookie同意..我只希望聊天显示是否给出了cookie同意。
现在,页面加载后点击按钮就完成了。现在我想添加一个事件监听器来检查cookie是否已设置,然后启动zopim聊天而不重新加载页面。
我的javascript:
function OpenChat(){
$zopim(function() {
$zopim.livechat.window.show();
});
}
document.cookie('cookieconsent_dismissed').addEventListener('change', OpenChat(), true);
答案 0 :(得分:2)
mate,对不起,你不能为cookie更改事件添加一个监听器,它还不可能,
你需要做一个定时器查询cookie值并检查,它是如何jquery $ fileDown加载工作,用计时器检查cookie值,
function listenCookieChange(cookieName, callback) {
setInterval(function() {
if (cookieRegistry[cookieName]) {
if (readCookie(cookieName) != cookieRegistry[cookieName]) {
// update registry so we dont get triggered again
cookieRegistry[cookieName] = readCookie(cookieName);
return callback();
}
} else {
cookieRegistry[cookieName] = readCookie(cookieName);
}
}, 100);
}
有一个完整的样品供你交配,检查: http://jsfiddle.net/8pzkggv0/