Javascript文档未定义

时间:2015-03-23 13:32:45

标签: javascript jquery domdocument

我有这个错误,我不明白为什么:ReferenceError: document is not defined。 我试图放window.content.document,但错误window也没有定义。 我不知道诀窍在哪里,特别是我不明白为什么? 最糟糕的是,当我把它取下时,我有错误ReferenceError: $ is not defined,而我在我的HTML中包含了jQuery。

这是我的script.js:

var client = {};

client.start = function (data) {

    setTimeout(function(data) {
    client.chart(data);
    }, 60);
};

module.exports.getJson= function(data){

    client.start(data);
};

client.chart= function (data) {

    //console.log(" this is the data" + data);

    $(document).ready(function() {

        $(function () {
          //Do my stuff
        });
    });
};

和我的HTML:

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8">


    <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
    <script language="JavaScript" type="text/javascript" src="/js/jquery-1.2.6.min.js"></script>
    <script language="JavaScript" type="text/javascript" src="/js/sprinkle.js"></script>
    <script src="http://code.highcharts.com/highcharts.js"></script>
    <script src="http://code.highcharts.com/modules/exporting.js"></script>

    <script type="text/javascript" src="script.js"></script>

  </head>
  <body>
    <div id="containerChart" style="min-width: 310px; height: 400px; margin: 0 auto"></div>
  </body>
</html>

有什么想法吗?

2 个答案:

答案 0 :(得分:5)

我认为,正确的答案是您使用的linter,并不知道您在浏览器环境中运行。文档和窗口等对象是预定义的。就个人而言,我有这个问题与eslint,我通过执行以下操作修复它:

env: {
        browser: true
      }

希望这会有所帮助。

答案 1 :(得分:3)

您的脚本中不能包含document对象,因此请从script.js

中删除以下代码
$(document).ready(function() {
    $(function () {
      //Do my stuff
    });
});

您可以从html页面调用脚本函数,而不是上面的代码,如下所示

<script>
    $(document).ready(function() {
      //call your script.js function from here
    });
</script>