边缘没有加载一些JavaScript

时间:2016-08-04 17:19:35

标签: javascript html

我有一个在Chrome和FF上运行良好的网站,但在Edge上失败了。当我查看Console日志(在Edge上)时,它告诉我某些javascript函数未定义,如果我切换默认的Edge开发人员工具的调试器,我可以看到我的一个js文件还没有被加载,但其他人(见下文)。控制台登录FF和chrome报告没有错误或警告。页眉设置为<!DOCTYPE html>,js包括在内......

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

generalUtils.js和login.js加载,但是dlmUtils.js没有加载。 (nb还成功地从ajax.googleapis.com加载了一堆远程&#39; js。)

dlmUtils.js中的javascript在Chrome和FF中运行正常,并且不会在控制台上报告任何错误或警告。

思想?

jonb

2 个答案:

答案 0 :(得分:3)

奇怪 - 我发现实际上脚本 正在加载,但随后被快速转储。事实证明,Edge并不喜欢Javascript中的默认参数。 - 我想我错过了一个标准备忘录: - )

function showJobsheet(id=0) {

导致Edge转储脚本,所以现在......

function showJobsheet(id) {
    id = ((typeof id !== 'undefined') ? id : 0);

这是我必须做出的唯一改变,现在一切正常。

感谢所有提供帮助的人......

答案 1 :(得分:0)

我遇到了同样的问题。通过将Edge开发工具打开并显示JS文件所在的目录,我可以将其固定为Edge像GreybeardTheUnready所说的那样“转储” JS文件。刷新页面时,它确实会立即显示在该目录中,然后消失。

即使启用了实验性JavaScript功能,这也是发生的,因为我正在使用JavaScript的可选链接(?.)。删除了那些问号,现在JS文件仍然存在。不幸的是,这意味着我必须使我的代码更加冗长...