Hallo leute,
ich habe ein kleines Problem. Ich hatte folgendes vor:
eine Variable global anlegen
funktion 1 soll die variable um 1 erhöhen und funktion 2 aufrufen
funktion 2 soll ein ajax request senden und mit dem php code eine variable erzeugen und die globale variable überschreiben.
somit sollte die funktion 1 nicht immer erhöhen können sondern kann NUR den wert vom ajax befehl erhöhen. das sollte der gedanke sein.
folgenden Script habe ich benutzt:
die alert befehle sind für debugzwecken eingebaut.
Es geht hier um eine kleine Map ich laufe auf der karte und hole mir dabei die position der spieler mit dem ajax request. wenn ich am rand angekommen bin, dann bewegt sich mein spieler nicht, ist auch gut so. wenn ich nun die ganze zeit versuche gegen den rand zu laufen, erhöht sich dabei die x/y koordinate, d.h wenn ich wieder vom rand zurück gehen will , muss ich genausooft in die entgegen gesetzte richtung laufen damit sich der spieler wieder vom rand wegbewegt.
also die var x; , die ich am anfang deklariert habe, wird nicht überschrieben mit der funktion load map tiles.
der script steht in einer extra .js datei also nicht im head oder body bereich des HTML dokuments.
wie kann ich in einer extra eingebudenen js datei eine variable erstellen, welche in allen funktionen sichtbar wird? ohne return werte der funktionen möchte da eigentlich kein "schnick schnack " drumherum haben quasi
hoffe ihr versteht was ich meine und könnt mir helfen
MFG
EDIT: Problem behoben.. wieder mal das gleiche phänomen, versuche rum, poste ins forum und auf einmal wird alles klar
ich habe ein kleines Problem. Ich hatte folgendes vor:
eine Variable global anlegen
funktion 1 soll die variable um 1 erhöhen und funktion 2 aufrufen
funktion 2 soll ein ajax request senden und mit dem php code eine variable erzeugen und die globale variable überschreiben.
somit sollte die funktion 1 nicht immer erhöhen können sondern kann NUR den wert vom ajax befehl erhöhen. das sollte der gedanke sein.
folgenden Script habe ich benutzt:
PHP-Code:
var x;
var y;
var loadMapTiles = function(y,x){
$.ajax({
type: "GET",
url: "ajax/ajaxMap.php",
data: "y="+y+"&x="+x,
success: function (responseText){
$('div#mapTiles').html(responseText);
$('span.x').text(playerPosition[0]);
$('span.y').text(playerPosition[1]);
x = playerPosition[0];
y = playerPosition[1];
alert("X beim Holen: "+x);
displayTiles();
}
})
};
var activateClickEvents = function(){
$('area#south').click(
function(){
x++;
alert("X beim klicken: "+x);
loadMapTiles(y,x);
});
};
Es geht hier um eine kleine Map ich laufe auf der karte und hole mir dabei die position der spieler mit dem ajax request. wenn ich am rand angekommen bin, dann bewegt sich mein spieler nicht, ist auch gut so. wenn ich nun die ganze zeit versuche gegen den rand zu laufen, erhöht sich dabei die x/y koordinate, d.h wenn ich wieder vom rand zurück gehen will , muss ich genausooft in die entgegen gesetzte richtung laufen damit sich der spieler wieder vom rand wegbewegt.
also die var x; , die ich am anfang deklariert habe, wird nicht überschrieben mit der funktion load map tiles.
der script steht in einer extra .js datei also nicht im head oder body bereich des HTML dokuments.
wie kann ich in einer extra eingebudenen js datei eine variable erstellen, welche in allen funktionen sichtbar wird? ohne return werte der funktionen möchte da eigentlich kein "schnick schnack " drumherum haben quasi
hoffe ihr versteht was ich meine und könnt mir helfen
MFG
EDIT: Problem behoben.. wieder mal das gleiche phänomen, versuche rum, poste ins forum und auf einmal wird alles klar