为什么jslint抱怨在声明的函数中使用this?在声明的函数中使用'this'严格违反,没有违反函数表达式
function navigate() {
var id = $(this).attr('id');
}
给我:
#1 Strict violation.
var id = $(this).attr('id'), // Line 18, Pos 20
然而,JSLint的没有给出有关投诉:
var navigate = function() {
var id = $(this).attr('id');
}
我使用他们两人以同样的方式,他们都在浏览器中正常工作。
view.on('click', navigate);
仅供参考,我周围的警告得到了利用event.target
代替,但我想知道的区别是什么。
function navigate(event) {
var id = $(event.target).attr('id'); // no complaint
}
当我运行它通过JSLint的我没有对'this'我得到了一个得到一个错误“事件”未被使用的错误。 – 2012-04-13 00:33:05
是的,我忘了删除前两个函数中的事件,我只是添加它来解决关于'this'的投诉。更新的问题,谢谢。 – 2012-04-13 00:38:25