2012-08-02 74 views
1

我想使用下面的代码使用jquery和qtip来设置cookie。正如你所看到的,当这个'beforeShow'事件被触发时,我需要设置一个cookie。我可以确认事件正在触发,因为我看到警报,但我无法看到cookie被设置?如果这个代码工作,或者我错过了什么?
非常感谢,无法使用jquery设置cookie

 api: { 
      beforeShow: function() { 
       if(document.getElementById('CheckMessage')) { 
        alert(""); 
        $.cookie("MyTestExampleCookie", "1"); 
        return false; 
       } 
      } 
     }, 
+0

一个Cookie插件,也许? – karim79 2012-08-02 11:18:51

+0

它只是一个简单的cookie来知道这个事件是否被解雇了,这样我们可以避免在cookie被设置后再次显示弹出窗口。我可以在没有插件的情况下做到吗? – 2012-08-02 11:20:20

+1

您可以用原始的JavaScript,但jQuery的不具有操纵饼干内置的。 – Joe 2012-08-02 11:22:22

回答

0
document.cookie = ("MyTestExampleCookie=1"); 

但它更建议使用一些饼干的lib

3

你安装jQuery的饼干吗?

https://github.com/carhartl/jquery-cookie

+0

我没有,但我希望能使用本地jQuery的功能,因为它只是一个简单的状态检查,该事件已被触发.. – 2012-08-02 11:20:53

+0

@JamesRadford JQuery没有内置cookie!看看文档。 – epascarello 2012-08-02 11:46:12

+0

@JamesRadford $ .cookie肯定来自jQuery cookie库。这不是一个沉重的图书馆,我建议使用这个。 – 2012-08-02 14:21:24

0

,除非你需要记住的价值在用户导航离开该页面后,你不需要一个cookie。如果您只想知道是否触发了特定事件,请设置一个正常变量。

如果您确实需要使用cookie并操作这些客户端,那么使用上面建议的插件(但并非绝对必需)更容易。

+0

正确,用户可以导航了,因此需要一个cookie – 2012-08-02 11:26:17

+0

见http://stackoverflow.com/questions/1458724/how-to-set-unset-cookie-with-jquery,第二个答案非插件解。它不是特别干净的IMO。 – Flash 2012-08-02 11:27:13

+0

即时通讯使用此代码,虽然我看不到被设置的cookie? document.cookie ='MyTestCookie =同意;期满=; path = /' – 2012-08-02 11:48:13