我有3 HTML文件的网站:通过jQuery的cookie的脚本,删除cookie的
语言选择:media/index.html
EN页:media/en/index.html
CN页:media/cn/index.html
网站文件:media/site/
我通过这个脚本创建一个cookie,当一个访问者选择了al anguage在我的网站:
<script type="text/javascript">
$(function() {
var url = '';
var en_page = 'en';
var cn_page = 'cn';
if ($.cookie('default_page') != null) {
if (window.location.href != url + '/' + $.cookie('default_page')) {
window.location.href = url + '/' + $.cookie('default_page');
}
}
$('#enlink').click(function() {
$.cookie('default_page', en_page, {expires: 999, path: '/', domain: 'mywebsite.com'});
});
$('#cnlink').click(function() {
$.cookie('default_page', cn_page, {expires: 999, path: '/', domain: 'mywebsite.com'});
});
});
</script>
....
....
<a href="cn/index.html" id="cnlink">CN</a>
<br>
<a href="en/index.html" id="enlink">EN</a>
这成功地创建了一个名为“DEFAULT_PAGE”的cookie的不是“CN”或“连接”,然后重定向用户mywebsite.com/cn
或mywebsite.com/en
以后访问的值。这一切工作正常。
但是,我无法删除这个cookie。我需要删除这个cookie当用户点击一个链接更改语言media/en/index.html
或media/cn/index.html
(即我实际的网站,而不是语言选择页面):
<script type="text/javascript">
function deletecookie(){
alert('delete');
$.cookie('default_page', null, {path: '/', domain: 'mywebsite.com'});
}
</script>
....
....
<a href="../index.html" onclick="deletecookie()">
Change language
</a>
但是这是行不通的,那一刻我点击“改变语言“,它仍然会将我重定向到同一页面(因为cookie仍然存在),所以我无法访问语言页面(media/index.html
)。该函数被调用,因为我得到了警报框,但我检查了我的浏览器,它是Firefox,并且Cookie mywebsite/default_page
仍然存在。
感谢您的帮助。
你试图通过插件本身提供的功能removeCookie? $ .removeCookie('default_page',{path:'/'}); – Tariqulazam