HTML1506:意外的令牌 <script>

Posted

技术标签:

【中文标题】HTML1506:意外的令牌 <script>【英文标题】:HTML1506: Unexpected token <script> 【发布时间】:2015-12-10 14:14:23 【问题描述】:

我有一个错误,它只出现在我收到html1506: Unexpected token in line 213,1 的 Internet Explorer 和 Edge 中。我怀疑这与我的 webcomponents/polyfills 的加载方式有关,但在这一点上,它是一个非常复杂的组件和脚本网络,因此缩小源代码是一件痛苦的事情!

这是包含第 213 行的代码段:

210 </body>
211 </html>
212
213 <script>
214 /********************************
215 /TEMPLATE VARS
216 /*******************************/
217 var save_url = '';  
218 var base_url = 'http://disalle.dev.activemls.com/';

现场: http://disalle.dev.activemls.com

【问题讨论】:

为什么是结束html元素后面的script标签? 我不只是想在第 213 行之前和之后显示代码,以防它可能相关 在您的实时页面上,脚本标签位于关闭正文标签之后,这是无效的 HTML。只需将其移至正文即可。 实际上即使修复了html标签内的脚本,我似乎仍然遇到这个问题。 【参考方案1】:

为避免在 Internet Explorer 中出现此错误,请将脚本放在 &lt;body&gt; 标记的末尾:

 <body>
    
    // more
   
    <script>
    /********************************
    /TEMPLATE VARS
    /*******************************/
    var save_url = '';  
    var base_url = 'http://disalle.dev.activemls.com/';

    // more

    </script>
</body>
</html>

【讨论】:

【参考方案2】:

乍一看,您似乎在关闭 HTML 文档后有脚本。

试试:

</body>
<script>
/********************************
/TEMPLATE VARS
/*******************************/
var save_url = '';  
var base_url = 'http://disalle.dev.activemls.com/';
// More Stuff Here
</script>
</html>

【讨论】:

我真的是在打自己的脸。 在我也将script inside body 标记以及html 标记移动之前,我仍然在 IE 和 Edge 中遇到错误。

以上是关于HTML1506:意外的令牌 <script>的主要内容,如果未能解决你的问题,请参考以下文章

未捕获的SyntaxError:无效或意外的令牌

Reactjs:意外的令牌'<'错误

解析错误:由“<!DOCTYPE html>”引起的意外令牌更漂亮/更漂亮

Javascript:未捕获的 SyntaxError:意外的令牌 <

JSONP 意外令牌 <

JQuery:未捕获的 SyntaxError:无效或意外的令牌