0

单击按钮时,我正在使用jQuery toggleClass向 DIV 添加一个类。添加类后,DIV 会展开以显示 DIV 中的所有内容,并带有height:auto;.

当我单击将我带到另一个页面的链接,然后单击浏览器后退按钮时,我的问题就出现了。当我返回原始页面时,不再应用该类。有没有办法在整个人的访问过程中保持该类的应用,即使他们访问另一个页面然后点击后退按钮?

4

2 回答 2

0

这对我有用:有一个 cookie 来保持按钮按下状态,以及一个 cookie 来跟踪实际按下的按钮(对于多个按钮,还要检查哪个按钮被按下)

var buttonpack;

$(function(){
	if( ($.cookie("ButtonPressedState") == 1) && ($.cookie("buttonCookie")=="buttonpack")) {
		 $('#'+$.cookie("buttonpack")).toggleClass("inputbutton:active active");
							} else {
 		  $(this).siblings().removeClass('inputbutton:active active');
									}

$('.inputbutton').click(function () {
					$(this).toggleClass("inputbutton:active active");
					$(this).siblings().removeClass('inputbutton:active active');
						 ButtonId = $(this).attr('id'); 
						if(($('.inputbutton')).hasClass("inputbutton:active active")){
							buttonpack=$(this).attr('id');

							$.cookie("ButtonPressedState", 1, {expires: 1, path:'/'});
							$.cookie("buttonId", buttonpack, {expires: 1, path:'/'});	
						}else{
							$.cookie("ButtonPressedState", 0, {expires: 1, path:'/'});
							$.cookie("buttonpack", null, {expires: 1, path:'/'});
							buttonpack=null;
								}
					
				});
	});

于 2014-11-15T09:11:58.937 回答
0

是的,您可以将切换状态存储在 cookie 中。例如,有一个 jquery 插件调用 jquery cookie:https://github.com/carhartl/jquery-cookie页面加载后,您可以按照 cookie 中的说明添加或删除类。

于 2013-08-20T21:57:03.593 回答