私はjQueryのバージョン1.7.1とjQueryのクッキーバージョン1.4.1
と同じ問題を抱えていましたこれは私を夢中にさせていたので、私はソースコードに飛び込むことにしました。何が間違っているのか分かりました。ここで
は、機能チェックがクッキーが、それはオプションは、アカウントにオブジェクトをとらない存在するかどうときあなたが見ることができるように$ .removeCookie
$.removeCookie = function (key, options) {
if ($.cookie(key) === undefined) { // this line is the problem
return false;
}
// Must not alter options, thus extending a fresh object...
$.cookie(key, '', $.extend({}, options, { expires: -1 }));
return !$.cookie(key);
};
の定義です。したがって、あなたが削除しようとしているクッキーとは別のパスにいる場合、その関数は失敗します。
いくつかのソリューション:
アップグレードJquery Cookies。最新バージョンではサニティチェックさえしていません。
またはあなたにこれを追加するには
$.removeCookie = function (key, options) {
if ($.cookie(key, options) === undefined) { // this line is the fix
return false;
}
// Must not alter options, thus extending a fresh object...
$.cookie(key, '', $.extend({}, options, { expires: -1 }));
return !$.cookie(key);
};
とき、または削除するクッキーはこのような何か準備を文書化:
$.cookie('cookie-name', '', { path: '/my/path', expires:-1 });
をあなたはクッキーのプラグインが含まれていますか? jQueryにはデフォルトで 'cookie'と' removeCookie'メソッドはありません。 – kapa