不知道你的意思是:
如何在不重新加载页面的情况下多次执行此操作?
假设您的代码在设置 cookie 之前执行,您将必须重新加载页面才能看到它工作。如果是这样的话……
switch 语句可以帮助设置默认语言。
// @param ($): jQuery version x?
(function ($) {
// 1. CONFIGURATION
var cfg = {
cookiename: 'language_name',
selected: '.selected',
lang: {
en: '.en',
es: '.es'
},
cssoptions: {
'display': 'none'
}
},
// 2. OBJECT
updateLanguages = {
init: function () {
var languageName = $.cookie(cfg.cookiename),
cfgLang = cfg.lang,
lang;
switch (languageName.toLowerCase()) {
case 'spanish':
lang = cfgLang.es;
break;
default:
lang = cfgLang.en;
break;
}
this.bindEvent(lang);
//$.cookie(cfg.cookiename, lang);
},
bindEvent: function (lang) {
$(cfg.selected).click(function () {
$(lang).css(cfg.cssoptions);
});
}
};
// 3. DOM READY
$(function () {
updateLanguages.init();
});
} (jQuery));
您也可以在此处添加您的 cookie 'set' 功能。updateLanguages
如果需要,可以使用功能或配置选项进行扩展。