var $div = $('').appendTo($('#header'));
Lors de la création de nouveaux éléments et de leur ajout au DOM, avez-vous besoin de la balise de fin? pourquoi ou pourquoi pas? Dois-je uniquement utiliser la balise de fin si je place du contenu dans la balise que je crée? ainsi:
var $div = $(' Error-Homie! ').appendTo($('#header'));
ou pourrais-je créer un élément avec du contenu, mais laisser de côté la balise de fin? Bien? Mal?
var $div = $('').appendTo($('#header'));
- jQuery – Ajout d’une div au corps, le corps est l’object?
- Comment supprimer un élément ajouté avec Jquery et pourquoi bind ou live entraîne la répétition d’éléments
- Jquery: L’événement click ne fonctionne pas après append. (Je ne sais pas comment utiliser .ON)
- Gestion des événements de clic pour les éléments ajoutés dans jQuery
- enlever le dernier élément jquery
- jQuery append () et remove (), élément
- jQuery .append (), prepend (), after ()… dupliquer les éléments et le contenu?
- Jquery – Effectue un rappel après l’ajout
- jQuery ajoute un problème SVG chargé avec AJAX
- Supprimer des éléments à l’aide de jQuery (y compris le bouton de suppression lui-même)
Bien que cela puisse fonctionner si vous n’utilisez pas de balise de fermeture (ou au moins, fermez-la vous-même ), vous devez append une balise de fermeture (fermeture automatique) (comme indiqué, pour la compatibilité entre plates-formes ):
Pour garantir la compatibilité entre plates-formes, l’extrait de code doit être correctement formé. Les balises pouvant contenir d’autres éléments doivent être associées à une balise de fermeture:
$('');
Sinon, jQuery autorise la syntaxe de balise de type XML (avec ou sans espace avant la barre oblique):
$('');
Les balises qui ne peuvent pas contenir d’éléments peuvent être fermées rapidement ou non:
$(''); $('');
Voici comment jQuery crée les éléments:
Si le code HTML est plus complexe qu’une balise unique sans atsortingbuts, comme dans l’exemple ci-dessus, la création réelle des éléments est gérée par le mécanisme innerHTML
du navigateur. Dans la plupart des cas, jQuery crée un nouvel élément et définit la propriété innerHTML
de l’élément sur le fragment HTML qui a été transmis. Lorsque le paramètre a une seule balise, telle que $('')
ou $('')
, jQuery crée l’élément à l’aide de la fonction JavaScript native createElement()
.
Btw. vous pouvez également transmettre les données en tant que second paramètre:
$('', {'class': 'error', text: 'Error-Homie!'})
vous avez besoin de la balise de fin: http://api.jquery.com/appendTo/ par exemple
$('Test
').appendTo('.inner');
il devrait également être
.appendTo('#header');
et pas
.appendTo($('#header'));
vous pouvez probablement le faire comme ça
$('',{class:'error'}).html('Error-Homie!').appendTo($('#header'));
Vous avez toujours besoin que la balise de fin ait le code HTML approprié.
Mais il est un fait que la majorité des navigateurs laissent de telles erreurs. Ce n’est pas une raison pour être paresseux, cependant, vous ne devez pas compter sur la tolérance des navigateurs pour que votre code fonctionne. Cette tolérance est là pour pouvoir afficher des sites avec quelques erreurs, ne pas mettre en garde le code délibérément incorrect.
- jQuery append du texte
- Jquery append () se comporte-t-il de manière asynchrone?
- Ajouter une chaîne encodée en HTML en HTML, pas en texte
- Attendez la fin de la précédente .append ()
- Le tableau ajouté jQuery ajoute automatiquement une balise de fermeture à la fin du texte. Pourquoi?
- JQuery peut-il append des balises d’élément de fermeture uniquement?
- append / supprimer le nom de l’ancre de l’URL actuelle sans actualisation
- jQuery: object append (), remove () le avec delay ()
- jQuery append () vs appendChild ()
- jQuery autocomplete pour les entrées créées dynamicment