2012-08-07 53 views
0

我想添加cookie到我的模式对话框,但我不知道如何。我想在24小时内添加cookies,有谁可以帮忙吗?这里是我的模态对话框代码:如何在jquery模式对话框中设置cookie

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.6/jquery-ui.min.js"></script> 
<script type="text/javascript" href="/jquery/jquery.cookies.js"></script> 

<script> 
$(function() { 
     // a workaround for a flaw in the demo system (http://dev.jqueryui.com/ticket/4375), ignore! 
     if ($.cookie('showDialog') == undefined || $.cookie('showDialog') == null || $.cookie('showDialog') != 'false') { 

     $("#dialog:ui-dialog").dialog("disable"); 
     $(".selector").dialog({ hide: "slide" }); 
     $("#dialog-modal").dialog({ 
      width:860, 
      height: 420, 
      modal: true, 
      resizable:false, 
      draggable:false 
     }); 
     $.cookie('showDialog', 'false', { expires: 1 }); // set the cookie, with expiry after 1 day 
} 
    }); 

    </script> 



<link href="http://xxx.com/jquery/jquery.ui.all.css" rel="stylesheet" type="text/css" /> 
</head> 
<body> 

<div id="dialog-modal" title="Like Us on Facebook"> 
    <div class="fb-like-box" data-href="http://www.facebook.com/xxx" data-width="820" data-height="335" data-show-faces="true" data-stream="false" data-header="false"></div> 
</div> 
+1

您的代码看起来不错。你有没有包含jQuery cookies脚本? https://github.com/carhartl/jquery-cookie/ – 2012-08-07 09:38:14

回答

2

你的代码本身看起来不错,但你也应该包括script参考jQuery的cookies plugin,因为它不是jQuery的标准的一部分。

<script type="text/javascript" href="/scripts/jquery.cookies.js"></script> 

您还需要设置cookie你显示对话框后:

if ($.cookie('showDialog') == undefined || $.cookie('showDialog') == null || $.cookie('showDialog') != 'false') { 
    // show dialog... 
    $.cookie('showDialog', 'false', { expires: 1 }); // set the cookie, with expiry after 1 day 
} 
+0

非常感谢! – androider 2012-08-07 10:44:53

+0

我有一个问题,现在窗口不像模态对话框,但它在我的页面上方我的标题上...我在上面的问题中编辑了代码! 感谢您的帮助,Rory McCrossan – androider 2012-08-07 10:56:35