【问题标题】:JSLint warns that "document" is not fully defined on jQuery(document).readyJSLint 警告“文档”在 jQuery(document).ready 上没有完全定义
【发布时间】:2011-10-28 18:31:22
【问题描述】:

我得到一个

'document' has not been fully defined yet.
    $(document).ready(function () {

来自jsLint 的警告。 我明白为什么会发生这种情况,但我希望我的代码没有警告。

我的问题是 - 我如何在代码中解决这个问题(将文档分配给自身?var document=document?)或者以其他方式使警告消失。

谢谢。

【问题讨论】:

  • 为什么这是一个警告? document 已定义。这是 JSLint 中的错误吗?
  • 因为,如果我理解正确的话,使用发生在document 的定义中。 IE - 变量在其定义中使用。类似于var x = 3 + x;

标签: javascript jquery jslint


【解决方案1】:

你可以简单地使用

/*jslint browser:true */

在代码的开头假设一个浏览器。

【讨论】:

    【解决方案2】:

    我认为您可以放心地忽略这一点。如果您不希望它显示,请像这样重写它

    $(function () {
        // Document is ready
    });
    

    $(function () {})$(document).ready(function () {})equivalent

    【讨论】:

      【解决方案3】:

      使用简写:

      $(function() {
         ...
      });
      

      【讨论】:

        【解决方案4】:

        如果您更愿意按照自己的方式保留代码,您可以告诉 JSlint 同意您的决定:

        /*global document*/
        $(document).ready(function () {
            ...
        }
        

        这表明document 已在别处定义。

        【讨论】:

          【解决方案5】:

          JSLint 要求您在选择器选项中使用浏览器。然后将定义文档。在这里使用 $ 将无济于事......无论如何都不会在 JSLint 中使用。

          【讨论】:

            【解决方案6】:

            在根文件夹上创建一个 .jsintrc,使用:

            { "browser": true }

            你可以在JSHint Options看到所有选项

            【讨论】:

              猜你喜欢
              • 2012-07-28
              • 2011-04-27
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2010-12-11
              相关资源
              最近更新 更多