检查cookie是否存在并隐藏内容

时间:2012-08-20 22:08:34

标签: jquery css cookies

编辑:这有效(给我一个警报):

if (document.cookie.indexOf("TR_LNG") >= 0) { alert('cookie found'); }

所以这就是问题的隐藏机制。 但是在控制台:$('.langselmain').hide('fast');这也有效,所以我不知道wtf是错的。 结束编辑

我正在尝试检查语言首选项Cookie,如果存在则隐藏语言选择对话框。这就是我用来检查cookie的原因:

if (document.cookie.indexOf("TR_LNG") >= 0) { $('.langselmain').hide('fast'); } 

和要隐藏的内容:

<div id="langselectsplash" class="langselectsplash langselmain"><div id="select"><img src="http://sarvatma.org/wp-content/uploads/2012/08/sarvalogo2.png" /><p> 
        <style>#tr_setdeflang{display:none;}</style><div class="no_translate transposh_flags" ><a id="en" href="/about/" class="tr_active">English</a><a id="fr" href="/fr/about/">Français</a><a id="de" href="/de/about/">Deutsch</a><a id="ja" href="/ja/about/">日本語</a><a id="pl" href="/pl/about/">Polski</a><a id="es" href="/es/about/">Español</a></div>        </p></div></div><div id="langsplashfade" class="langselmain"></div> 

它只是不起作用

3 个答案:

答案 0 :(得分:8)

您可以使用:https://github.com/carhartl/jquery-cookie

设置cookie的js:

$.cookie('TR_LNG', 'set the value');

要隐藏:

if ($.cookie('TR_LNG')) {
    $('.langselmain').hide();
}

工作jsfiddle:

http://jsfiddle.net/3ypED/1/

修改:无插件http://jsfiddle.net/3ypED/4/

答案 1 :(得分:2)

您可以通过

检查cookie是否存在
if (document.cookie.indexOf("Login_ID") < 0) {
}

document.cookie.indexOf("Login_ID") = -1表示Cookie已过期 document.cookie.indexOf("Login_ID") = 0表示找到了Cookie

答案 2 :(得分:0)

这是一个愚蠢的错误。 我没有绑定我的功能。

$(document).ready(function(){
//that code
});

修好了。