2
var com = {};
var com.Project = function(){
   this.display = function(){
   alert("hai.....");
   }
}
var project_obj = new com.Project();

在创建 project_obj 时,我在 IE9 中遇到错误,例如“对象不支持此操作”

此代码在 Firefox 和 chrome 中运行良好。我已经给出了一个示例代码。我正在尝试在 javastript 中使用类和包概念。

我不知道为什么这个错误出现在 IE 中。

4

3 回答 3

2

这在所有浏览器中都是非法的,并且会引发语法错误:

var com.Project = function(){

你可以这样做:

var com = {}; // whatever
com.Project = function(){
于 2013-07-01T06:25:31.720 回答
2

问题出在第一行,因为变量名不能包含..

如果您尝试命名空间,则需要首先将其定义comObjectwithProject作为其属性之一:

var com = {
    Project: function () {
        // etc.
    }
};
于 2013-07-01T06:26:25.527 回答
0

根据您的 javascript 代码的工作链接,我认为您应该更改它

$.extend(true, window, container[0]);

$.extend(true, window, d);
于 2013-07-01T07:24:59.227 回答