2012-12-05 101 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

相关问题