Objekt nach jQuery.ajax() nicht mehr definiert...

Hansii1234

Mitglied
Hi!
Hab das Problem, dass ich nach dem Aufruf der jQuery.Ajax ein Objekt,
dass zuvor deklariert und benannt wird, nach dem Senden nicht mehr definiert ist...

Ich lese mit dem Objekt moreView n-Beliebige Urls aus einer Seite.
Diese Urls werden wiederum in dem Objekt urls gespeichert, dass sich innerhalb
von moreView befindet.

Daraufhin werden per Ajax mit jQuery die einzelnen Urls aufgerufen.
Das Problem : Der erste Durchlauf funktioniert wunderbar,
jedoch ab dem zweiten Ajax-Request das Objekt urls nicht mehr definiert ist...
Warum verliert das Objekt seine Gültigkeit?

Wäre nett, wenn mir jemand helfen könnte...
Danke! ;)

Code:
var moreView = {
        
        //Hier wird das Objekt erzeug
	urls : {},

	start : function() {
		if (jQuery(".more-views").attr("class") !== "more-views")
			return false;

		var end = jQuery(".more-views a").length;
		for ( i = 0; i < end; i++) {
			var urlOrig = jQuery(".more-views a").eq(i).attr("onclick");
			var sendUrl = urlOrig.substring(urlOrig.indexOf("popWin('") + 8, urlOrig.length);
			sendUrl = sendUrl.substring(0, sendUrl.indexOf("/', '"));


			//Hier wird es definiert
			moreView.urls[i] = sendUrl;
		};
		moreView.getUrl(0, end);
	},

	getUrl : function(current, end) {
		if (current === end)
			return false;
		jQuery.ajax({


			//UND HIER WIDER AUFGERUFEN
			//DOCH AB DEM 2. DURCHLAUF IST
                        //DIE VARIABLE NICHT MEHR DEFINIERT...
			url : moreView.urls[current],
			context : document.body,
			error : function() {
			},
			success : function(result) {
				jQuery("body").append('<div style=\"display:none\" class=\"tempView\"></div>');
				jQuery(".tempView").html(result);
				var imgUrl = jQuery(".tempView img").attr("src");
				jQuery(".more-views a").eq(current).attr("onclick", "startView.show(\"" + imgUrl + "\")");
				current++;
				jQuery(".tempView").remove();
				moreView.getUrl(current, end);
			}
		});
	}
};
 
Sowas dummes...
Stundelang zerbrech ich mir mein Kopf.
Dann post ich und eine stunde später komm ich drauf.

Ich Idiot hab die ganze Seite in den temporären Div geladen,
womit sich auch einige .js files aus der geladenen Seite mit eingebunden haben.
Die wiederum haben - warum auch immer - mein Objekt zerstört.
Jetzt binde ich in mein temporären div nur noch den body-Part ein.
Somit gehts...

Grüße!
 
Zurück