Último artículo: Uso de JS para leer, escribir, eliminar el intercambio de códigos de cookies e instrucciones de anotación detalladas, encontré algunos problemas en la práctica:
1. Las cookies solo se pueden depurar en Firefox en archivos locales, es decir, Chrome no son válidos
2. La cookie no está programada para nunca caducar. Solo considera establecer un período de tiempo y expira, lo que obviamente no es razonable.
Esta vez, se da un código de operación de cookies más razonable:
La copia del código es la siguiente:
var cookie = {
get: function (k) {
return ((new Regexp (["(?:;)?", k, "= ([^;]*);?"]. Join (""))). Test (Document.cookie) && Regexp ["$ 1"]) || "";
},
establecer: function (k, v, e, d) {
var fecha = nueva fecha ();
var expira día = e;
date.setTime (date.gettime ()+expiresdays*24*3600*1000);
// Si hay un tiempo establecido, use cookies dentro del tiempo especificado, de lo contrario, nunca caducará
document.cookie = k+"="+v+"; expires ="+(e! = '' '? date.togmtString (): "gmt_string")+"; path =/; domain ="+(d ||' ');
},
del: function (k) {
var fecha = nueva fecha ();
// establece la fecha en la hora pasada
date.settime (date.gettime ()-10000);
document.cookie = k+"=; expires ="+date.togmtString ();
}
};
El ejemplo demuestra: haga clic en el texto para expandir el contenido y haga clic en Ocultar nuevamente. Cuando el contenido esté oculto, aún se ocultará la próxima vez que se abra, y cuando se muestre el contenido, aún se mostrará la próxima vez que se abra.
La copia del código es la siguiente:
<div>
<h3> encogedor </h3>
<div id = "tabcon">
<p> El contenido aquí se puede ver después de expandirse </p>
</div>
</div>
var btn = document.getElementsByTagName ('H3') [0];
btn.addeventListener ('click', function () {
var isClose = this.getAttribute ('data-isClose');
if (isClose == 'Close') {
espectáculo();
Cookie.del ('bandera');
}demás{
esconder();
Cookie.set ('bandera', 'escondite');
}
});
var tabcon = document.getElementById ('TabCon');
función show () {
tabcon.style.display = 'bloque';
btn.SetAttribute ('Data-IsClose', 'Open');
btn.innerhtml = 'encogedor';
}
function hide () {
tabcon.style.display = 'Ninguno';
btn.SetAttribute ('Data-IsClose', 'Cerrar');
btn.innerhtml = 'expandir';
}
var flag = cookie.get ('flag');
if (flag == 'hide') {
esconder();
}