我正在研究一个有2页的项目。
1)索引和2)设置
我有关闭元素并将其隐藏在设置页面上的按钮。问题是,当我单击"设置"页面中的关闭页面并选择保存时,我想隐藏索引页面上的元素。我无法实现同样的事情。任何帮助,将不胜感激。我发现的大多数解决方案只是使用jQuery重新指导到另一页,但我想触发事件,而不仅仅是重新指导。
我为同一创建了一个编码器:http://codepen.io/crazycoder775/pen/pnyjow
$(".list_sbar li").click(function(e) {
if ($(this).outerWidth() - 34 <= e.offsetX)
$(this).remove();
});
$(".list_sbar li").click(function(e) {
if ($(this).outerWidth() - 34 <= e.offsetX)
$(this).remove();
});
$(document).ready(function(){
$("#hide").click(function(){
$(".test1").hide();
});
$("#show").click(function(){
$(".test1").show();
});
});
$(document).ready(function(){
$("#hide2").click(function(){
$(".test2").hide();
});
$("#hide3").click(function(){
$(".test3").hide();
});
});
在上面的编码epen中,我有3个DIV和2个关闭按钮,单击任何关闭按钮,各自的DIV将被添加为隐藏类。
您可以将cookie值(可以在关闭按钮点击时设置)与$(window).focus
事件侦听器,该侦听器检查cookie值并在cookie nide中掩盖或根据值揭示元素。索引页面专注于
cookies文档:https://developer.mozilla.org/en-us/docs/web/api/document/cookie/cookie
尝试以下内容:
$(document).ready(function(){
if( document.cookie.indexOf('element_closed=')== -1){
document.cookie = 'element_closed=false; path=/';
}
// document.cookie = "element_closed=true"; // uncomment to test focusing window with element hidden
// used to get an individual cookie by name
// from http://stackoverflow.com/questions/10730362/get-cookie-by-name
function getCookie(name) {
var value = "; " + document.cookie;
var parts = value.split("; " + name + "=");
if (parts.length == 2) return parts.pop().split(";").shift();
}
function hideElement(){
$(".toggle_target").hide();
document.cookie = 'element_closed=true; path=/'
console.log(document.cookie);
}
$(window).focus(function(){
//console.log(document.cookie);
console.log(getCookie('element_closed'));
if(getCookie('element_closed') == 'true'){
hideElement();
}
});
$(".toggle").on('click', function(e){
e.preventDefault();
hideElement();
});
});
工作jsfiddle:https://jsfiddle.net/b1nyczht/20/