Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > странности с дин. подгрузкой js и объектами


Автор: alexey9 28.4.2007, 03:40
Здравствуйте.
Такая вот ситуация:
Код


function someClass() {

...
    this.addService = function(name) {                                
        newScriptObject = document.createElement("script");                                                       
        newScriptObject.type = "text/javascript";                                                                 
        newScriptObject.src = name +".js";                                     
                                                                                                                  
        newScriptObject.parentRef = this;                                                                         
        newScriptObject._name = name;                                            
        document.getElementsByTagName("head")[0].appendChild(newScriptObject);                                    
                                                                                                                  
        // For IE                                                                                                 
        newScriptObject.onreadystatechange = function() {                                                         
            if (newScriptObject.readyState == "complete") {                                                       
                this.parentRef.moduleInclude_callback(this._name);
            }                                                                                                     
        }                                                                                                         
        // For other browsers                                                                                     
        newScriptObject.onload = function() {
                this.parentRef.moduleInclude_callback(this._name);
        }                                                                                                         
    }
...

    this.moduleInclude_callback = function(name) {                                  
            includedClass = new  incClass();
            alert(includedClass.testMsg());                                   
    }   
...
}


Код

function inClass() {
...
this.testMsg = function() {
 return "SomeMessage";
}
...
}



Собственно проблема - в IE все отлично, в FF - "includedClass.testMsg is not a function". Куда смотреть и что это вообще такое происходит  smile  smile  smile 

Автор: AKS 28.4.2007, 06:58
Конструктор inClass, вызов new  incClass - разные имена. Как с этим includedClass.testMsg может быть "в IE все отлично"? 

Автор: alexey9 28.4.2007, 18:45
Блин, ну это опечатка. Конесчо там includeClass = new inClass();

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)