非常困惑 - javascript没有被执行 - 除非在Firebug中打开控制台?

sha*_*jan 1 javascript firefox firebug google-chrome

我刚刚开始为一个项目做一些Javascript工作,我做的主要是后端工作,所以我很抱歉在这个新手!此外,不使用Javascript框架,因为我想在让自己变得非常容易之前了解基础知识:)

所以,这是我的问题/困惑:我写了一个动态改变形式的小javascript.这就是我调用代码的方式:

// loads the initial box
window.onload = initList(environment_box);

// loads artifacts on each change to environment select box
environment_box.onchange = changeList;
Run Code Online (Sandbox Code Playgroud)

这就像魔法一样 - 在CHROME中就是这样!我从来没有注意到它不适用于Firefox(它只是一个内部工具,所以我可以假设体面的浏览器,但我觉得嘿,如果它在Chrome中运行,它将在Firefox中运行!).所以,我做了一些调查,好像代码没有在Firefox中执行.我掏出了萤火虫,想看看发生了什么事.

有趣的是,当我在firebug上启用Console时,我的代码被执行了!我很困惑为什么,我非常感谢我能得到的任何帮助.谢谢!

-Shawn

Anu*_*rag 10

console在JavaScript 中调用一些方法是我最好的猜测.Chrome已console定义为默认值,因此不存在问题.

但是在Firefox上,没有这样的全局对象(不是没有Firebug),所以当你尝试在未定义的对象上调用属性时,

console.log(..);
Run Code Online (Sandbox Code Playgroud)

它抛出一个你没有捕获的异常,因此JavaScript执行停止.