【问题标题】:Can't read jQuery cookies but can set them, "Uncaught TypeError: $.cookie is not a function"无法读取 jQuery cookie 但可以设置它们,“Uncaught TypeError: $.cookie is not a function”
【发布时间】:2015-10-20 17:41:57
【问题描述】:

发生了一件奇怪的事情。我正在使用名为 JS Cookie 的插件/lib 使用 jQuery。

在我的 HTML 头中得到了这个:

<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
<script src="scripts/js-cookie-master/src/js.cookie.js"></script>
<script src="scripts/cookiesetter.js"></script>

JS:

$(document).ready(function(){

$( ".close" ).click(function() {
    Cookies.set('increase', '1', { expires: 7 });
    $( "#popup, #overlay" ).hide();
});

if ( $.cookie("increase")); {
        return;
    }

    alert('test');
});

cookie 的输出:

increase - 1

好的,所以没有损坏。

但是当我尝试使用以下代码读取 cookie 时:

    if ( $.cookie("increase")); {
        return;
    }

    alert('test');

我得到的错误是:

Uncaught TypeError: $.cookie is not a function

怎么办?

我搜索了 Google、Stackoverflow 等,按照所有步骤检查了正确的加载顺序。

提前致谢!

【问题讨论】:

  • 你确定JS cookie和jQuery cookie一样吗? The documentation 不显示美元符号的使用。
  • 我很惊讶它的工作原理,因为你的分号在你的 if 语句行上不合适
  • 是的,确实有点傻。需要更好地调试:-)
  • @evolutionxbox 如下评论所述,js-cookie 是同一个 jquery.cookie,不同的是在 js-cookie v2 中去掉了 jquery 依赖,见这里:github.com/js-cookie/js-cookie/releases/tag/v2.0.0跨度>

标签: javascript jquery cookies jquery-plugins


【解决方案1】:

$.cookie() 不是jQuery 的函数,也不是JS Cookie 的函数。

改为使用Cookies.get('name') 来检索cookie。


正如Christopher Marshall 所说:

我很惊讶它的工作原理,因为你的分号在你的 if 语句中不合适

if ( $.cookie("increase")); {
                          ^----- remove

【讨论】:

  • 非常感谢!我很傻,我没有看到这个错误。 :-) 我得到了这个 sn-p:stackoverflow.com/a/8405718/1577471 但如上所述,这个有效!
  • 那是因为它已经超过 3 年了。永远不要仅仅依赖 sn-ps,而是回到实际的插件文档。我认为他们不久前就停止使用 $ 语法了。
  • 是的,我们在新项目中删除了 jQuery 依赖,见这里:github.com/carhartl/jquery-cookie/issues/…。 js-cookie 项目中的 1.5.1 版本仍然使用 jQuery,以防你想使用美元符号,但我建议放弃它并升级。
  • @evolutionxbox 感谢您的解释,非常感谢!
猜你喜欢
  • 2017-08-01
  • 2016-07-07
  • 1970-01-01
  • 1970-01-01
  • 2021-04-26
  • 1970-01-01
  • 1970-01-01
  • 2014-09-09
  • 1970-01-01
相关资源
最近更新 更多