我想我在循環功能方面犯了一些錯誤。我有一個測驗,我有四個選項。每次我選擇一個答案並點擊「nästa」時,它將存儲所選擇的答案,但萬一他們改變了主意並想要回所有選項,他們可以點擊「visa alla alternativ」按鈕。爲了檢查我是否正確,我附加了它出現的問題。每次點擊「nästa」時,問題的數量都會出現。卡住循環或別的東西?
例如。 1 2 3 4(我點了四次,出現了四個不同的問題)。
但是,如果我點擊「簽證alla alternativ」數字將是這樣的。 1 2 3 4 1 2 3 4.這取決於我點擊「visa alla alternativ」的次數。
var answer = [];
var select;
$(".option").on("click", click_question);
function nästa() {
answer.push(select);
count_click();
$(".option").each(function() {
$(this).fadeTo("slow", 1);
$(this).on("click", click_question);
});
$(this).fadeTo("slow", 0.2);
$("#visa_alternativ").fadeTo("slow", 0.2);
$("#tillbaka_question").fadeTo("slow", 1);
clicks.length = 1;
}
function click_question() {
$(".option").each(function() {
$(this).fadeTo("slow", 0.1);
});
$(".option").off("click");
$(this).fadeTo("slow", 1);
$("#visa_alternativ").fadeTo("slow", 1);
$("#nästa").fadeTo("slow", 1);
$("#nästa").on("click", nästa);
select = $(this).text();
}
$("#visa_alternativ").on("click", function() {
$(".option").each(function() {
$(this).fadeTo("slow", 1);
});
$(".option").on("click", click_question);
$(this).fadeTo("slow", 0.2);
$("#nästa").fadeTo("slow", 0.2);
});
這是莫名其妙的是,函數調用,這裏的功能讓我們的隨機問題。正常工作,但如果我點擊「Visa alla alternativ」,它會根據我點擊「visa alla anlternativ」的次數調用更多的問題。有一次,在我做了與each()
有關的問題之前,我問了這裏的問題,但現在我遇到了類似的問題,但有點不同。我需要幫助並告訴我我在做什麼錯了each()
函數?
編輯:
好吧,發現,如果我把$( 「#下一步操作」)上( 「點擊」,下一步操作)。在它正在工作的功能之外,但不是當我將它放入函數時,正如你上面看到的那樣?爲什麼?
我會建議你避免函數名和變量名中的瑞典字符,即使它是有效的並且工作正常。 – adeneo
是的,我一開始就寫了這個代碼,但是我將來會避免使用它。但你明白我的問題嗎? – user3478007
是的,但它有點牽扯,很難確切地看到代碼的作用和問題。我看不出任何明顯的錯誤,但也許如果你嘗試設置[小提琴](http://jsfiddle.net) – adeneo