2012-12-05 137 views
1

我使用CodeKit超過我的腳本運行jsHint,並儘量減少他們,我想了解以下錯誤:爲什麼jsHint警告我:'(var)已定義但從未使用'?

// create a next button for each text input and wire it for nextQ()! 
    var next = $('<a class="button next">Next</a>') 
     .on('click', function() { 
      nextQ($(this)); 
     }) 
     .insertAfter($questions.find(':text')); 

jsHint警告:

next is defined but never used

鑑於元素插入每個頁面加載後的(),這是jsHint的限制,還是我做錯了什麼?我的jQuery非常基礎,我想從錯誤中學習!

+0

您正在定義'next'。你在哪裏使用它? – kojiro

+0

爲什麼你的代碼中甚至有「var next =」?這裏不應該需要。 –

回答

4

那麼,你正在定義一個回調,它不需要分配給一個變量;你可以簡單地做:

$('<a class="button next">Next</a>') 
    .on('click', function() { 
     nextQ($(this)); 
    }) 
.insertAfter($questions.find(':text')); 

所以接下來沒有任何用處。

+0

ooohh ..便士下降:) – ptim

1

next var是不必要的,因爲在返回值.on()上調用.insertAfter()。除非您打電話給next,否則您可以這樣做:

$('<a class="button next">Next</a>') 
    .on('click', function() { 
     nextQ($(this)); 
    }) 
    .insertAfter($questions.find(':text')); 
+0

感謝您的解釋 – ptim

相關問題