繁体   English   中英

JSLint:在定义之前使用过

[英]JSLint: was used before it was defined

嗨,我有3个javascript文件。

  • 的jquery.js
  • utility.js
  • file1.js

在file1.js我有

jQuery.noConflict()
jQuery(document).ready(function($) { 
 // ....
});

我得到一个错误'jQuery'在定义之前就被使用了。 并且“文档”在定义之前使用。

我如何安全地摆脱这个警告。

如果我做

var document = document || {}; 

然后在我的utility.js中如果使用它,它将在IE中为null,在Firefox中为ok。

这是什么最好的解决方案?

文档中

JSLint还识别一个/ * global * /指令,该指令可以向JSLint指示此文件中使用的变量是在其他文件中定义的。 注释可以包含逗号分隔的名称列表。 每个名称可以后跟一个冒号,后跟true或false,true表示该变量可以由该文件赋值,false表示不允许赋值(默认值)。 该指令尊重功能范围。

可以为您预定义一些全局变量。 选择“假定浏览器(浏览器)”选项以预定义Web浏览器提供的标准全局属性,例如document和addEventListener。

例:

/*jslint browser: true*/
/*global $, jQuery*/

正如Quentin所说,有一个/*global*/指令。

这是一个例子(把它放在文件的顶部):

/*global var1,var2,var3,var4,var5*/

确保初始全局语句与/*在同一行,否则它会中断。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM