Hallo,
ich habe folgende die Ausgangssituation.
Eine Webseite mit einem Feld von Anchors, einem Inhaltsbereich und ein Navigationsbereich.
Wird einer der Anchors gedrückt wird per Ajax ein Inhalt in den Inhaltsbereich geladen und aus diesem per Ajax geladenen Inhalt wird eine Navigation in den Navigationsbereich geladen.
Drückt man einen anderen Link wird das Div geleert und der neue Inhalt dort wieder per ajax reingeladen.
Nun habe ich aber das Problem, dass ich nun zwei Inhalte im Navigationsbereich liegen habe. Einmal vom ersten geladen Inhalt und einmal vom zweiten.
Wenn ich nun versuche zu überprüfen ob sich in dem Navigationbereich den schon was befindet, aus dem Ajaxinhalt herraus, bekomme ich immer null. Ich kann also nicht per .length überprüfen ob ich schon eine Navigation auf der Seite habe.
Was mach ich den nun um nicht mehrere Navigationen reingeladen zu bekommen?
Grüße
ich habe folgende die Ausgangssituation.
Eine Webseite mit einem Feld von Anchors, einem Inhaltsbereich und ein Navigationsbereich.
Wird einer der Anchors gedrückt wird per Ajax ein Inhalt in den Inhaltsbereich geladen und aus diesem per Ajax geladenen Inhalt wird eine Navigation in den Navigationsbereich geladen.
Drückt man einen anderen Link wird das Div geleert und der neue Inhalt dort wieder per ajax reingeladen.
Nun habe ich aber das Problem, dass ich nun zwei Inhalte im Navigationsbereich liegen habe. Einmal vom ersten geladen Inhalt und einmal vom zweiten.
Wenn ich nun versuche zu überprüfen ob sich in dem Navigationbereich den schon was befindet, aus dem Ajaxinhalt herraus, bekomme ich immer null. Ich kann also nicht per .length überprüfen ob ich schon eine Navigation auf der Seite habe.
Was mach ich den nun um nicht mehrere Navigationen reingeladen zu bekommen?
Javascript:
var ajaxContent = $('.ajaxContent'),
ajaxContentControl = $('li.ajaxcontentcontrol');
$('.ajaxcontentcontrol').remove('.ajaxcontentcontrol');
if ( $('.contentcontrol .ajaxcontentcontrol').length === 0 ) {
$('.contentcontrol>ul li:first-child').before(ajaxContentControl);
ajaxContentControl.hide().fadeIn('slow');
}
else {
$('.contentcontrol>ul li.ajaxcontentcontrol').remove();
$('.contentcontrol>ul li:first-child').before(ajaxContentControl);
ajaxContentControl.hide().fadeIn('slow');
}
Grüße