嗨,我有3个javascript文件.
在file1.js我有
jQuery.noConflict()
jQuery(document).ready(function($) {
// ....
});
Run Code Online (Sandbox Code Playgroud)
我得到一个错误'jQuery'在定义之前就被使用了.并且"文档"在定义之前使用.
我如何安全地摆脱这个警告.
如果我做
var document = document || {};
Run Code Online (Sandbox Code Playgroud)
然后在我的utility.js中如果使用它,它将在IE中为null,在Firefox中为ok.
这是什么最好的解决方案?
我有几个这些错误,我不知道如何"正确"解决它,问题是我有很多javascript文件(分离,以便于维护),我包括插件等.
所以在这个例子中我使用来自http://www.openjs.com/scripts/events/keyboard_shortcuts/的快捷方式
这只是定义了快捷方式
shortcut = {.......
Run Code Online (Sandbox Code Playgroud)
然后,当我在我的代码中使用它时
shortcut.add("F1", function () { showDialog(); }, { 'type': 'keydown', 'propagate': false, 'target': editor_document });
Run Code Online (Sandbox Code Playgroud)
jslint会抱怨
JS Lint:在定义之前使用了'快捷方式'.
我也有自己的代码,我使用在其他文件中声明的函数,所以解决这个问题的"正确"方法是什么
我在文件remover.js中有以下对象:
'use strict';
(function( remover, $, undefined ) {
// ...
// Object's definition
// ...
}( window.remover = window.remover || {}, jQuery ));
Run Code Online (Sandbox Code Playgroud)
这用于外部文件main.js:
'use strict';
remover.doSomething();
Run Code Online (Sandbox Code Playgroud)
代码正在运行,但JSHint会引发以下问题:
Running "jshint:all" (jshint) task
app/scripts/stuff/main.js
line 3 col 1 'remover' is not defined.
? 1 problem
Run Code Online (Sandbox Code Playgroud)
如何删除此警告?