1
我正在使用jquery選項卡,選項卡中調用的信息來自數組,但由於我也有語言切換,所以選項卡名稱和內容根據所選語言而變化。爲什麼IE不能在我的jquery函數中調用數組?
我的代碼適用於除IE以外的所有瀏覽器,其中標籤名稱被調用,但標籤內的內容不是。
這是選項卡的代碼;
<script type="text/javascript">
$(document).ready(function() {
//When loaded
$(".tab_content").hide(); //Hide content
$("ul.tabs li:first").addClass("active").show(); //Show tab one
$(".tab_content:first").show(); //Show tab one content
//On Click Event
$("ul.tabs li").click(function() {
$("ul.tabs li").removeClass("active"); //Remove any "active"
$(this).addClass("active"); //Add "active" class to current tab
$(".tab_content").hide(); //Hide all tab content
var activeTab = $(this).find("a").attr("href"); //Find the href attribute value to identify the active tab + content
$(activeTab).fadeIn(); //Fade in the active ID content
return false;
});
});
</script>
這是調用每種語言內容的代碼;
<script type="text/javascript">
function getLanguageResources(){
var fr = new Array(); var en = new Array();
en['greeting'] = "Hi!"; fr['greeting'] = "Salut!";
var resources = new Array();
resources['en'] = en;
resources['fr'] = fr;
return resources;
}
function changeLanguage(lang){
var langResources = getLanguageResources()[lang];
$("span[name='lbl']").each(function(i, elt){
$(elt).text(langResources[$(elt).attr("caption")]);
});
$("p[name='lbl']").each(function(i, elt){
$(elt).text(langResources[$(elt).attr("caption")]);
});
$("a[name='lbl']").each(function(i, elt){
$(elt).text(langResources[$(elt).attr("caption")]);
});
}
$(document).ready(function() {
$("input[name='languagebutton']").click(function() {
changeLanguage($(this).val());
});
$(document).ready(
changeLanguage("en"));
});
我想作爲inititally標籤名沒有出現,當我用標籤的標籤出現,但內容的其餘部分並沒有改變我輸入的文本的標籤。
非常感謝您的幫助!
首先,加入了更多細節的時候更新你的問題; SO不是論壇,答案不適用於其他用戶。您的情況很難做到,因爲您沒有註冊;此帳戶基於cookie。註冊並標記此問題,我可以將此帳戶合併到您的註冊帳戶中。其次,SO是關於提出具體問題的,而不是「這是一堆代碼,我做錯了什麼?」如果你想去代碼路線的crapton,請訪問我們的姊妹網站[codereview.SE](http://codereview.stackexchange.com/)。 – Will 2011-01-28 12:48:38