Ich habe eine Funktion, die beim Klicken ein <div>
an ein Element anfügt . Die Funktion ruft den Text des angeklickten Elements ab und weist ihn einer Variablen mit dem Namen zu name
. Diese Variable wird dann als <div>
id
das angehängte Element verwendet.
Ich muss sehen, ob bereits ein <div>
id
with name
vorhanden ist, bevor ich das Element anhänge, aber ich weiß nicht, wie ich das finden soll.
Hier ist mein Code:
$("li.friend").live('click', function() {
name = $(this).text();
// if-statement checking for existence of <div> should go here
// If <div> does not exist, then append element
$("div#chatbar").append("<div class='labels'><div id='" + name + "' style='display:none;'></div>" + name + "</div>");
// Else
alert('this record already exists');
});
Dies scheint ziemlich einfach zu sein, aber ich erhalte die Fehlermeldung " Unerwartetes Dateiende bei der Suche nach dem Klassennamen" . Ich habe keine Ahnung, was das bedeutet.
if (document.getElementById(name)) {
$("div#" + name).css({bottom: '30px'});
} else {
$("div#page-content div#chatbar").append("<div class='labels'>" + name + "</div><div id='" + name + "'></div>");
}
Außerdem möchte ich dieses Element löschen können, wenn ich es schließe, wodurch das Element div id [name]
aus dem Dokument entfernt werden soll, dies .remove()
jedoch nicht.
Hier ist der Code dafür:
$(".mini-close").live('click', function(){
$(this).parent().remove();
});
Ich .mini-close
habe die Append-Funktion als Kind von hinzugefügt , .labels
sodass es eine Möglichkeit gab, die angehängte Funktion <div>
bei Bedarf zu schließen. Nach dem Klicken .mini-close
und dem erneuten Klicken auf denselben Namen wird immer li.friends
noch der gefunden div id [name]
und der erste Teil meiner if
Anweisung zurückgegeben.
$("div#" + name).css({bottom: '30px'});
ist falsch, sollte es sein$("div#" + name).css('bottom', '30px');