【问题标题】:Uncaught TypeError: $.cookie is not a function for Dialog未捕获的类型错误:$.cookie 不是 Dialog 的函数
【发布时间】:2016-03-24 07:09:05
【问题描述】:

我注意到我的 jQuery 对话框不再保存 cookie 并继续弹出每个页面重新加载。我不确定发生了什么变化,因为这在将近 1 年的时间里运行良好。我获取了 jQuery UI 和 js Cookie 的新副本,但我不知道为什么会出现错误:

未捕获的类型错误:$.cookie 不是函数。

我的 jQuery 中是否需要更新某些内容?

<script src="<?php echo get_template_directory_uri(); ?>/jquery-ui.js"></script>
<script src="<?php echo get_template_directory_uri(); ?>/js.cookie.js"></script>
<script type="text/javascript">
( function($) {
$(document).ready(function() {
    $(function() {
        if( document.cookie.indexOf( "shipping_note" ) < 0 ) {
            $( ".shipping-note-container" ).dialog({
                modal: true,
                resizable: false,
                show: 'slide',
                buttons: {
                    Ok: function() {
                        $( this ).dialog( "close" );
                        $.cookie('shipping_note', 'Ok', { path: '/', expires: 7 });
                    }
                }
            });
        }
    });
});
} ) ( jQuery );

【问题讨论】:

  • 什么是jquery.cookie?你打算写$.cookie 还是jQuery.cookie
  • 你是否包含了普通的 jQuery?
  • 抱歉,我在原帖中有错字,已更正。它是 $.cookie,而不是 jquery.cookie。我正在尝试 jquery.cookie 作为一个不起作用的测试。我通过使用ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js的 wp_enqueue_script('jquery') 在头部包含普通的 jQuery

标签: jquery jquery-ui jquery-cookie typeerror


【解决方案1】:

如果你使用的是 js js-cookie 库,方法是:

Cookies.set('name', 'value'); Cookies.get('name'); ......

如果您想使用jQuery plugin,则需要在本地下载它,然后您可以将其用作:

$.cookie("example", "foo");

【讨论】:

  • 宾果游戏!我不知道为什么它突然失败了,但是下载一个新的副本并上传到服务器上工作得很好。非常感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 2017-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-06
  • 2019-05-24
  • 2021-12-15
  • 2019-10-26
相关资源
最近更新 更多