5
我做了這個javascript測驗:http://utbm.trunat.fr/CIP/quiz/爲什麼我的JQuery不在IE上加載?
它適用於普通的瀏覽器,但甚至沒有加載Internet Explorer。
它接縫,它不承認initQuiz()
功能。
你有什麼想法我可以解決這個問題嗎?
我做了這個javascript測驗:http://utbm.trunat.fr/CIP/quiz/爲什麼我的JQuery不在IE上加載?
它適用於普通的瀏覽器,但甚至沒有加載Internet Explorer。
它接縫,它不承認initQuiz()
功能。
你有什麼想法我可以解決這個問題嗎?
Internet Explorer不接受後面的逗號:
question = {'texte': $(this).attr("texte"),
'sound': $(this).attr("sound"),}
顯然,另一個錯誤來源於此行:
$('title').html(QUIZ_TITLE[lang]);
原來you can't set the title like that in IE。改爲使用document.title = QUIZ_TITLE[lang]
。
第三個錯誤是您引入了一個新變量question
而沒有var
關鍵字,這是IE中的錯誤。稍後您將再次使用response
。更新您的loadXML
這樣:
function loadXML(xml) {
$(xml).find("question").each(function() {
var question = {'texte': $(this).attr("texte"), 'sound': $(this).attr("sound")};
reponses = [];
$(this).find('carre').find('reponse').each(function() {
var reponse = {'texte': $(this).text(), 'sound': $(this).attr("sound"), 'bonne': false};
if($(this).attr('bonne') == "vrai") reponse['bonne'] = true;
reponses.push(reponse);
});
question['reponses'] = reponses;
questions.push(question);
});
startGame(questions);
}
第四個錯誤是在你驗證的答案是正確的方式。
if($(this).attr('data-type') == 'true')
你比較data-type
屬性字符串值"true"
的價值,但是當你分配值,將它設置爲布爾值true
:
$('#r'+(i+1)+'input').attr('data-type', r.bonne);
要確保您總是比較字符串值,例如,您可以將值設置爲:
$('#r'+(i+1)+'input').attr('data-type', r.bonne.toString());
消息:意外調用方法或屬性訪問。 行:113 字符:460 代碼:0 URI:http://utbm.trunat.fr/CIP/quiz/js/jquery-1.4.4.min.js 消息:對象不支持此屬性或方法 行:110 char:6 代碼:0 URI:http://utbm.trunat.fr/CIP/quiz/js/start-quiz.js – simon 2011-01-10 10:11:53
我喜歡如何有兩類瀏覽器:普通瀏覽器和IE。 – 2011-01-10 10:42:01