所以我终于让这个奇妙的 cookie 脚本适用于我的网站 www.dynamicdrive.com/forums/showthread.php?69591-Looking-for-a-quot-do-not-show-this-page-again-quot-checkbox-脚本 :
// Skip this Page Script (c)2012 John Davenport Scheuer
// as first seen in http://www.dynamicdrive.com/forums/
// username: jscheuer1 - This Notice Must Remain for Legal Use
;(function(setting){
var cook = {
set: function(n, v, d){ // cook.set takes (name, value, optional_persist_days) - defaults to session if no days specified
if(d){var dt = new Date();
dt.setDate(dt.getDate() + d);
d = '; expires=' + dt.toGMTString();}
document.cookie = n + '=' + escape(v) + (d || '') + '; path=/';
},
get: function(n){ // cook.get takes (name)
var c = document.cookie.match('(^|;)\x20*' + n + '=([^;]*)');
return c? unescape(c[2]) : null;
}
};
if(cook.get('skipthispage')){
//Hide element when cookie exists
}
else {
//Show element when cookie does not exist
}
if(!document.cookie){cook.set('temp', 1);}
if(document.cookie){
jQuery(function($){
$('#optout').css({display: ''}).append(setting.optoutHTML).find('input').click(function(){
this.checked? cook.set('skipthispage', '1', setting.days) : cook.set('skipthispage', '', -1);
this.checked && setting.gowhenchecked && location.replace(setting.page);
});
});
}
})({
days: 1, // days cookie will persist
page: '',
gowhenchecked: true, // true/false - should page switch when the box is checked?
optoutHTML: '<label for="optoutcheckbox">Don\'t show this again: <input type="checkbox" id="optoutcheckbox" value=""></label>'
});
然而; 我正在使用它来隐藏当人们最初访问我的网站时弹出的启动页面,它使他们可以选择使用 1 天长的 cookie 隐藏此启动页面。
这个启动页面包含有关我正在处理的站点的信息,并且它一直在变化。所以我需要一种快速有效的方法来在信息发生变化时清除所有 cookie。
所以我需要一个可以在我的 ACP 中单击的按钮,它可以清除这些 cookie,并再次为访问我网站的人显示启动页面。
我一直在尝试使用很多不同的方法来让它工作,但似乎没有一个工作。
感谢 jscheuer1 提供了这个可爱的脚本。
问候,弗雷德里克 T
编辑:我应该补充一点:ACP 位于脚本所在的子目录中。
http://example.com/index.php // 这是加载脚本的地方
http://example.com/admin/index.php // 这是我需要按钮的地方。
如果以上不可行,我想我可以使用 PHP 仅在会话用户设置为管理员时才允许显示。但我想避免这种情况。