我所拥有的简化形式如下:
一个 HTML 页面运行:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>Before scripts</p>
<script src="/javascripts/json2.js"></script>
<script src="/javascripts/jquery.js"></script>
<script src="/javascripts/clock-skeleton.js"></script>
<p>After scripts.</p>
</body>
</html>
clock-skeleton.js 读取:
console.log('Starting clock.js.');
console.log('Finished pass through clock.js.');
页面似乎无限期挂起。我没有看到“脚本之前”或“脚本之后”。 Chrome 的控制台似乎没有显示来自 eviscerated clock.js 的两个日志调用。
我包含 json2.js(来自 Douglas Crockford 的 Github 产品)和 jQuery.js (v3.2.0) 有什么问题吗?
我该怎么做才能让它像 JavaScript 无限循环一样陷入困境?
--更新--
我从最小的案例中得到了理智的行为;我试着加回去 the original clock.js with copious logging behavior added, including the first line.最小页面现在表现得像一个无限循环; Chrome 在加载页面时显示的是它所列内容的 chop 版本,日志中绝对没有显示任何内容。 (这种行为在我如上所述加载 clock-skeleton.js 和加载 the real thing 以及第一行和几乎每个 block 的调试之间是一致的。
我有点担心,对于上面引用的最小情况或对工作解决方案的全面尝试,我无法设法获取一行 console.logged 信息。
最佳答案
我没看到你关闭你的 <head>
标签。此外,在正文中间像这样混合脚本通常不是一个好习惯,您需要在 <head>
中包含像 jQuery 这样的库。但我假设您这样做只是为了测试目的。
关于javascript - 我如何陷入尝试的 JavaScript 包含?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45619258/