jQuery .remove() Frage

master_1

Mitglied
Hallo Leute !

Es geht um diese Funktion

Code:
$('#playlist_deleteIT').live('click',function(){
	$(this).parents('ul').css("visibility", "hidden");
	$(this).parents('ul').css("height", "0px");
	$(this).parents('ul').css("position", "absolute");
	$(this).parents('ul').css("left", "0px");
   
$('#playlist_counter').html((parseInt($('#playlist_counter').html())-1));
});
 });

Mit einem x ( Grafik ) werden in einer Liste wo versch. Songs stehen einzelne Songs gelöscht. Wenn man löscht läuft ein Song in einem Player. Nun möchte ich das beim Letzten gelöschten Song in der Liste der Player entfernt wird.

Dies funktioniert mit diesem Code

Code:
function removePlayer() {
  jwplayer('footer_player').remove();
}

Mein Problem ist das ich damit nicht zurecht komme der Klickfunktion das zu lernen.

Mein Versuch

Code:
	$(document).ready(function(){  
    $('#playlist_deleteIT').live('click',function(){
    var index = $(this).index() + 1;   
	var index = jwplayer('footer_player').remove();
	document.getElementById('player_titel').innerHTML = '';
    
  });
});

damit erreiche ich zwar das der Player entfernt wird, aber nicht beim letzten X sondern beim zweiten Klick auf das X !

Die Liste: man kann bis zu 20 Songs in die Liste hinzufügen. Man startet einen Song, und wenn man will kann man jeden einzelnen Song mit dem X entfernen, und beim letzten X soll dann der Player schliessen.

Hat jemand ein Idee warum beim obigen Code der Player beim 2ten Klick schliesst, und/oder hat jemand eine besser Idee ?

Lg
 
Hi
Vorweg .live() ist veraltet, verwende ein neueres jQuery und .on().


Du hast ja mehrere X (Remove Buttons), für jeden Song einen nehme ich an. Dann solltest du das nicht über die ID #playlist_deleteIT ansprechen, sondern dafür eine Klasse vergeben (Nehmen wir für das Beispiel mal die Klasse .deleteMe).
Nun kannst du im Clickevent prüfen, wie viele deleteMe Elemente es noch gibt und falls es keine mehr gibt den Player entfernen.
Javascript:
$(".deleteMe").click(function() {
$(this).remove();
if($( ".deleteMe" ).length==0) {
jwplayer('footer_player').remove();
}

});
 

Neue Beiträge

Zurück