Chrome控制台出现ILLEGAL TOKEN错误

时间:2015-12-30 21:42:42

标签: javascript jquery google-chrome google-chrome-extension character-encoding

免责声明:我很擅长开发(第二年CS专业),所以请耐心等待。 我目前正在开发一个chrome扩展,它从页面中提取JSON数据,然后通过HTML表格在扩展中显示数据。

我正在使用可通过Visual Studios获得的Chrome扩展模板。 由于我没有声誉,我不能发布链接以供参考,但是如果你要输入" chrome扩展名Visual Studios"在谷歌,这是第一个链接。

我正在使用一个名为" DataTables"的表的jQuery插件。通过Visual Studios下载。

每当我在Visual Studio上运行Visual Studio上的解决方案" index.htm"文件,我在控制台中收到此错误:

  

未捕获的SyntaxError:意外的标记ILLEGAL

     
    

jquery.dataTables.min.js:1

         

popup.js:1

  

This is how the console reads "jquery.dataTables.min.js"这是一个随插件下载的文件,并根据插件的安装说明在HTML文件中引用。  控制台读取" popup.js"以同样的方式。

问题:为什么控制台会以这种方式读取我的两个文件?

我已经查看了有关此错误的StackOverflow上的每个问题,并尝试了所有已提供的解决方案,但无济于事。

  
      
  1. 我已经多次检查过Unicode 200b"零宽度空间"

  2. 的任何标志   
  3. 我已将默认字体设置为Times New Roman,并将所有文件的编码设置为UTF-8。

  4.   
  5. 控制台shows that all these files have loaded中的网络诊断,当我通过文本编辑器运行html文件时,该解决方案可以正常工作。我有一个完全可排序的表显示虚拟数据。

  6.   

我假设大多数人都熟悉chrome扩展程序的布局(manifest,html文件,javascript文件,icon.png)。     以下是HTML和JS的相应代码(我相信清单和图标与我的问题无关)

" popup.html" HTML(Jquery / JS / CSS引用和保存数据的表):

<meta charset="UTF-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="scripts/DataTables/jquery.dataTables.min.js"></script>
<script src="app/popup.js"></script>
<link href="css/classic.css" rel="stylesheet" />
<title>Popup</title>
<body> 
   <table id="example" class="display" width="100"></table>
</body>
</html>

&#34; popup.js&#34; JAVASCRIPT(硬编码的JSON数据,其功能使用&#34; Datatables&#34;库来初始化表格标题)

var dataSet = [
       ["00001", "John", "Smith"],
       ["00002", "Jane", "Doe"],
       ["00003", "Ted", "Johnson"],
       ["00004", "Betty", "Smith"],
       ["00005", "Susan", "Wilson"],
       ["00006", "John", "Doe"],
       ["00007", "Bill", "Watson"],
       ["00008", "Walter", "Wright"]
];




  $(document).ready(function () {
 $('#example').DataTable({
    data: dataSet,
    columns: [
        { title: "Emp. Number" },
        { title: "First Name" },
        { title: "Last Name" }
    ]
});
  alert('If i loaded, it loaded');
});

1 个答案:

答案 0 :(得分:0)

首先,我是否可以建议尝试从CDN加载JS文件(您的资源显示很奇怪)this is a common javascript CDN如果您无法这样做,请检查以确保数据表文件位于事实上,javascript。

其次,看起来好像是在顶部加载jQuery一次,然后再使用数据表JS加载(实际上,它实际上是在加载)