Javascript Aufruf einer Funktion Klasse

Ich versuche zu nennen, eine Klasse Funktion:

//Gantt chart object
function ganttChart(gContainerID) {

    this.isDebugMode = true;                                    //Is this chart in debug mode
    this.gContainer = document.getElementById(gContainerID);    //The container the chart is built inside
    this.gDebugPannel;                                          //Debug pannel

    //Create debug pannel
    if (this.isDebugMode) {
        this.gContainer.innerHTML += "<div id=\"gDebug" + gContainerID + "\" class=\"gDebug\">cometishian</div>";
        this.gDebugPannel = document.getElementById("gDebug" + gContainerID);
    }

    gDebug("lmfao!");

//Updates debug information
function gDebug(debugMessage) {
    alert(this.gDebugPannel.innerHTML);
    if (this.isDebugMode) { this.gDebugPannel.innerHTML = debugMessage; }
}
}

Ich erwarte, dass es zu alert "cometishian" aber this.gDebugPannel.innerHTML null ist, irgendwelche Ideen?

Bei der weiteren Untersuchung dieser.gDebugPannel ist nicht definiert.

Update:

//Gantt chart object
function ganttChart(gContainerID) {

    this.isDebugMode = true;                                    //Is this chart in debug mode
    this.gContainer = document.getElementById(gContainerID);    //The container the chart is built inside
    this.gDebugPannel;                                          //Debug pannel
    this.gPosX;
    this.gPosY;

    //Create debug pannel
    if (this.isDebugMode) {
        this.gContainer.innerHTML += "<div id=\"gDebug" + gContainerID + "\" class=\"gDebug\">5,5 | 5.1</div>";
        this.gDebugPannel = document.getElementById("gDebug" + gContainerID);
    }

    //Updates debug information
    ganttChart.gDebug = function(debugMessage) {
        if (this.isDebugMode) { this.gDebugPannel.innerHTML = debugMessage; }
    }

    this.gDebug("wo");

}

der Linie dieses.gDebug("wo") wirft:

Fehler auf der Webseite details

User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; InfoPath.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 1.1.4322; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; OfficeLiveConnector.1.4; OfficeLivePatch.1.3)
Zeitstempel: Thu, 25 Nov 2010 12:57:51 UTC

Message: Object doesn't support this property or method
Line: 21
Char: 5
Code: 0
URI: http://server1/bb/ganttnew/gMain.js
  • Die Aussage this.gDebugPannel; nichts.
  • panel 1 n btw...
InformationsquelleAutor Tom Gullen | 2010-11-25
Schreibe einen Kommentar