IE8中的Javascript对象错误

时间:2011-10-14 15:49:37

标签: javascript

    stages = {
            "1": {
                id: "1",
                div: "foo"
            },
            "2": {
                id: "2",
                div: "bar"
            },
            "3": {
                id: "3",
                div: "foobar"
            }
        };

当我在Firefox中运行它时,没关系。但是当在IE8中运行时,我收到此错误:

  

消息:对象不支持此属性或方法

这是一个已知错误/有解决方法还是我的语法?

2 个答案:

答案 0 :(得分:3)

如果标记中有一个带有id=stages的元素,则某些浏览器会创建全局变量stages作为对它的引用。但是,IE不支持在不声明的情况下覆盖它。如果您希望stages变量为全局变量,请将var stages;放入全局范围或将对象分配给window.stages

答案 1 :(得分:0)

我根本没有得到那个错误。我可以在javascript文件或控制台中定义这些代码,它可以正常工作。

如果我尝试从jsfiddle.net运行代码,我确实看到了错误。但是,错误是指Action.js中的代码和以下代码

if (e && e.target.getParent().get('id') == 'm') {

似乎对e.target不满意。

您究竟是如何导致该错误弹出的?