Question

Comment puis-je obtenir la div à partir de ce (dernier) élément de la liste?

À l'heure actuelle, j'ai ce qui est tout simplement laid ... des suggestions sur un? Sélecteur propre / solution

var div = ul.append("<li><div></div></li>").contents("li:last-child")[0].children[0];

Merci!

Était-ce utile?

La solution

En utilisant un index des rendements de tableau que l'objet HTMLElement et ainsi supprime beaucoup de fonctionnalités utiles jQuery, donc soyez prudent avec ça. Je aurais tendance à l'aborder de cette façon:

var div = $("<div/>").appendTo($("<li/>").appendTo(ul));

De plus à l'intérieur à à l'extérieur, ce qui crée un élément de la liste, il ajoute à votre liste, crée une div, il ajoute à votre nouvel élément de liste et retourne la div, encore enveloppé dans la bonté jQuery. Si vous le souhaitez, vous pouvez ajouter un index de tableau pour obtenir juste le HTMLElement:

var div = $("<div/>").appendTo($("<li/>").appendTo(ul))[0];

Autres conseils

Vous pouvez aller sur l'ajout d'un peu différemment aussi:

var div = $('<div/>'); 
// do whatever you need to do with the div
$('<li/>').appendTo(ul).append(div);

Comme cela?

var div = ul.append("<li><div></div></li>").contents("li:last-child > div")[0];

Qu'en est-il ceci:

ul.append("<li><div></div></li>").contents("li:last-child > div").get(0);

, je pense:

var div = ul.append('<li><div></div></li>').find("li:last div");

Que diriez-vous ceci:

 var div = $('<li><div/></li>').appendTo(ul).find('div');

juste pour être complet:

var div = $('<div></div>').appendTo($("<li></li>").appendTo(ul));
var div = ul.append("<li><div></div></li>").find('div').get(0);

Je pense que ce que vous recherchez.

Ma solution est:

var div = ul.append("<li><div></div></li>").find("div:last");
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top