Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么IE8不完全加载Java脚本?_Javascript_Internet Explorer 8 - Fatal编程技术网

Javascript 为什么IE8不完全加载Java脚本?

Javascript 为什么IE8不完全加载Java脚本?,javascript,internet-explorer-8,Javascript,Internet Explorer 8,我在WinXP上以正常模式运行IE8(无论兼容性是否打开)。我正在对几年前编写的rails应用程序进行维护。通常,当我加载页面和/或刷新页面时,它会报告不同的javascript错误。当我查看开发人员工具中的错误时,似乎javascript文件尚未完全加载。因此,这些错误通常与语法有关,例如,javascript文件中的Cntrl+F和恶意“return”语句。Cntrl+F和恶意“return”语句语句。我在旧版本的IE上遇到了这个问题。这个问题在测试线束中永远无法再现,在服务器日志中也没有留

我在WinXP上以正常模式运行IE8(无论兼容性是否打开)。我正在对几年前编写的rails应用程序进行维护。通常,当我加载页面和/或刷新页面时,它会报告不同的javascript错误。当我查看开发人员工具中的错误时,似乎javascript文件尚未完全加载。因此,这些错误通常与语法有关,例如,javascript文件中的Cntrl+F和恶意“return”语句。

Cntrl+F和恶意“return”语句语句。

我在旧版本的IE上遇到了这个问题。这个问题在测试线束中永远无法再现,在服务器日志中也没有留下任何痕迹,但始终影响了一小部分IE 6负载

解决方案是让嵌入HTML文件仔细检查JS是否已加载

foo.js:

// do all the real work.

// As the last statement, set a variable indicating completion.
foo_js_fully_loaded = true;
foo.html:

<script src=foo.js></script>
<script>if (!foo_js_fully_loaded) { /* reload the page */ }</script>

如果(!foo_js_full_loaded){/*重新加载页面*/}

我在旧版本的IE上遇到了这个问题。这个问题在测试线束中永远无法再现,在服务器日志中也没有留下任何痕迹,但始终影响了一小部分IE 6负载

解决方案是让嵌入HTML文件仔细检查JS是否已加载

foo.js:

// do all the real work.

// As the last statement, set a variable indicating completion.
foo_js_fully_loaded = true;
foo.html:

<script src=foo.js></script>
<script>if (!foo_js_fully_loaded) { /* reload the page */ }</script>

如果(!foo_js_full_loaded){/*重新加载页面*/}

对象文字或数组声明中的尾随逗号?有些浏览器会毫无错误地接受这一点,IE不会

// Trailing commas are bad
var someArray = [
    "thing",
    "last",
];
var someObject = {
    one: "thing",
    after: "another",
};

正如galambalazs在他的评论中所建议的,将为您解决类似的问题。

在对象文字或数组声明中使用逗号结尾?有些浏览器会毫无错误地接受这一点,IE不会

// Trailing commas are bad
var someArray = [
    "thing",
    "last",
];
var someObject = {
    one: "thing",
    after: "another",
};

正如galambalazs在其评论中所建议的,将为您解决类似的问题。

您是否已验证源文件与加载的文件不匹配?仅仅因为其他浏览器没有错误,并不意味着javascript中没有错误。有些浏览器更宽容。ie由于部分负载而出错的可能性很小;然而,部分问题是这个应用程序使用了一堆库脚本,比如几年前jquery的部分脚本和其他脚本;他们似乎没有特别好地衰老;主应用程序包装中包含大约20+个js,您是否验证了源文件与加载的文件不匹配?仅仅因为其他浏览器没有错误,并不意味着javascript中没有错误。有些浏览器更宽容。ie由于部分负载而出错的可能性很小;然而,部分问题是这个应用程序使用了一堆库脚本,比如几年前jquery的部分脚本和其他脚本;他们似乎没有特别好地衰老;主应用程序包装中包含大约20+个js