我正在通过JSHint一些代码,我不断收到以下错误内作出功能它不会阻止报告错误。我决定重构代码,在这里使用JSHint的建议,http://www.jshint.com/options/,但我仍然收到错误。我希望有人能够帮助我稍微重构这些代码,以便它能够通过。这里的功能的副本:JSHint错误不要循环
function setSounds(parent) {
var i,
l;
parent.getElements('.sound').each(function (elem) {
var soundEvents = [];
if (elem.get('fk_click_sound')) {
soundEvents.push('click');
}
if (elem.get('fk_mouseover_sound')) {
soundEvents.push('mouseenter');
}
if (soundEvents.length !== 0) {
for (i = 0, l = soundEvents.length; i < l; i += 1) {
elem.addEvent(soundEvents[i], (function() {
return function (e) {
FKSoundAIR(FKSoundStd[this.get('fk_' + e.type + '_sound')]);
};
})(elem), false);
}
}
});
}
我使用MooTools的。此功能的目的是传递一个父元素,然后将声音事件应用于所有具有班级“声音”的孩子。我正在使用自定义HTML属性,例如'fk_click_sound'将更多信息提供给函数。我选择了从http://blog.jbrantly.com/2010/04/creating-javascript-function-inside.html开始的循环内分配函数的方法。
任何建议或资源,你可以指向我会很好。谢谢!
你确定这是一个错误吗?这可能只是一个警告。 – Blender
这只是一个警告,但它在我的ant构建过程中弹出,导致构建停止完成。 –
@Spencer:你可以在顶部恢复你的编辑,提交你的解决方案作为答案,然后接受你自己的答案来结束这个问题?这将从未回答的问题列表中删除。干杯! –