2010-11-19 10 views
0

Hallo Leute, die sich wundern, wenn jemand mir helfen kann, verwende ich das Objekt literal Muster, um meinen Code zu organisieren (ich bin neu zu diesem Muster). Ich versuche, den Wert einer Variablen aus einer Funktion zurückzukehren, aber es hält mich die ganze Funktion zurückkehrt - könnte mir jemand sagen, was ich falsch hier tun ein Ausschnitt aus meinem Code ist -Rückgabewert vom Objekt literal patern

'teamStatusTableHeight': function() { 
    var theHeight = $(".teamStatusTable").height() - 130; 
    return theHeight; 
}, 
'numOfTeamMembers': function() { 
    var numTeams = $(".teamStatusTable tr").length; 
    return numTeams 
} , 
'scrollDistance': function() { 
    var scroll = teamStatus.teamStatusTableHeight/teamStatus.numOfTeamMembers + 30; 
    return scroll; 
} 

Jede Hilfe wäre sehr geschätzt.

+1

Wie rufen Sie die Funktion? –

+0

'scrollDistance': function() { \t \t var blättern = teamStatus.teamStatusTableHeight/teamStatus.numOfTeamMembers + 30; \t \t Rücklaufrolle; \t}, – jonnyhitek

+0

Ich benutze die oben genannten Werte, um eine Figur zu berechnen und zu berechnen - ich würde die Funktion live modulename.scrollDistance(); – jonnyhitek

Antwort

2

Sie müssen Anruf jene Funktionen, wie folgt aus:

var scroll = teamStatus.teamStatusTableHeight()/teamStatus.numOfTeamMembers() + 30; 

Notiere die hinzugefügt () so verwenden Sie das Ergebnis der Funktionen, nicht die Funktionen selbst.

+0

Prost Nick den Mann! – jonnyhitek

1

Das sieht gut aus für mich. Vielleicht rufen Sie die Funktion nicht wirklich an?

// get the function 
MyObj.teamStatusTableHeight 

// run the function 
MyObj.teamStatusTableHeight() 

Haben lassen Sie die Klammern weg? Sie müssen die Funktion tatsächlich ausführen. Andernfalls bieten sie lediglich Zugriff auf das Funktionsobjekt selbst.

+0

Hallo danke, dass du richtig warst. Ich habe die Nick-Frage als gelöst markiert, wie er zuerst gepostet hat - aber danke für deine Hilfe :-) – jonnyhitek

Verwandte Themen