2012-01-18 121 views
0

我正在使用carhart的jquery cookie插件,并且我编写了此代码以显示/隐藏#bounceBar单击#bounceStart。但它不起作用。我究竟做错了什么?Jquery Cookie显示/隐藏

此错误显示在控制台上:

Uncaught TypeError: Object function (a,b){return new e.fn.init(a,b,h)} has no method 'cookie' 

代码:

$('#bounceStart').click(function() { 
    //$('#bounceBar').show(); 
    $.cookie('bounce', 'on'); 
}); 

$('#bounceBar #off').click(function() { 
    //$('#bounceBar').show(); 
    $.cookie('bounce', 'off'); 
}); 

var bounce_on = $.cookie('bounce') == 'on'; 
if(bounce_on) { 
    $('#bounceBar').show(); 
} else {    
    $('#bouncebar').hide(); 
} 
+1

请定义“不起作用”。 **发生了什么**?控制台上是否有错误等等。 – 2012-01-18 03:40:08

+0

什么都没有发生。当我点击#bounceStart时,没有任何反应。没有错误。 – user999904 2012-01-18 03:41:16

+0

请确保您将整个代码包装在$(document).ready(function(){// code})中; – coolguy 2012-01-18 03:44:09

回答

0

您正在尝试基于cookie的设置做一些逻辑/复位(不知道)......希望这帮助..

$(document).ready(function(){ 
$('#bounceStart').click(function() { 
      //$('#bounceBar').show(); 
      $.cookie('bounce', 'on'); 
     }); 

     $('#off').click(function() { //off can directly call,since it is an ID 
      //$('#bounceBar').show(); 
      $.cookie('bounce', 'off'); 
     }); 

     var bounce_on = $.cookie('bounce'); //or some method to get the cookie 
     if(bounce_on == 'on') { 
       $('#bounceBar').show(); 
     } 
     else { 
       $('#bouncebar').hide(); 
     } 


}); 
+0

http://jquery-howto.blogspot.com/2010/09/jquery-cookies-getsetdelete-plugin.html JavaScript cookie的一些简单方法... – coolguy 2012-01-18 03:50:50