Quand faut-il utiliser .innerHTML et lorsque le document.écrire en JavaScript
Est là une règle générale, lorsque l'on doit utiliser document.write
pour modifier le contenu du site web et lors de l'utilisation de .innerHTML
?
Pour l'instant, mes règles étaient:
1) Utilisation document.write
quand ajoutant nouveau contenu
2) Utiliser .innerHTML
quand changer contenu existant
Mais je me suis confondu, car quelqu'un m'a dit que, d'une part, .innerHTML
est un étrange standard de Microsoft, mais d'un autre côté, j'ai lu que document.write
n'est pas autorisé dans le XHTML.
Structures qui dois-je utiliser pour manipuler mon code source avec JavaScript?
Trop paresseux pour aller dans la profondeur (et vous pouvez google pourquoi), mais, fondamentalement, ne JAMAIS utiliser de document.écrire. Plus d'informations: stackoverflow.com/questions/802854/... (Et, comme avec la plupart des absolus, je n'ai pas vraiment dire jamais. Il y a des utilisations pour elle, mais pas beaucoup.)
OriginalL'auteur R_User | 2012-04-10
Vous devez vous connecter pour publier un commentaire.
innerHTML
peut être utilisé pour modifier le contenu du DOM par chaîne munging. Donc si vous voulez ajouter un paragraphe avec du texte à la fin d'un élément sélectionné, vous pouvez donc quelque chose commedocument.getElementById( 'some-id' ).innerHTML += '<p>here is some text</p>'
Si j'étais vous suggérons d'utiliser autant de manipulation du DOM API spécifique que possible (par exemple,
document.createElement
,document.createDocumentFragment
,<element>.appendChild
, etc.). Mais c'est juste ma préférence.La seule fois que j'ai vu applicables utilisation de
document.write
est dans le HTML5 Boilerplate (regardez comment il vérifie si jQuery est chargé correctement). Autre que cela, je voudrais rester loin de lui.OriginalL'auteur Trevor Norris
innerHTML
etdocument.write
ne sont pas vraiment comparables méthodes pour modifier dynamiquement/insérer du contenu, puisque leur utilisation est différente et à des fins différentes.document.write
doit être liée à des cas d'utilisation spécifiques. Quand une page a été chargée et que le DOM est prêt vous ne pouvez pas utiliser cette méthode plus. C'est pourquoi est généralement la plus utilisée dans les expressions conditionnelles dans lequel vous pouvez l'utiliser pour syncronously charge externe fichier javascript (javascript bibliothèques), y compris<script>
blocs (par exemple, lorsque vous chargez jQuery à partir de la CAN à laHTML5 Boilerplate
).Ce que vous lisez sur cette méthode et le XHTML est vrai lorsque la page est servi avec le
application/xhtml+xml
type mime: à Partir de w3.orgUne autre différence entre ces approches sont liées à insertion de nœud: lorsque vous utilisez
.innerHTML
méthode, vous pouvez choisir l'endroit où ajouter le contenu, tout en utilisant document.écrire l'insertion de nœud est toujours la partie de document dans lequel cette méthode a été utilisée.OriginalL'auteur fcalderan
1) document.write() met le contenu directement sur le navigateur où l'utilisateur peut voir.
cette méthode écrit HTML expressions ou de code JavaScript à un document.
L'exemple ci-dessous va juste print "Hello World" dans le document
2) document.innerHTML changements à l'intérieur du contenu d'un élément
Il modifie le contenu d'un élément
Le code ci-dessous va changer le contenu de la balise p
vous pouvez utiliser le document.write() sans aucune connecté HTML, mais si vous avez déjà le code HTML que vous souhaitez modifier, puis de document.innerHTML serait le choix évident.
OriginalL'auteur Mohammed Muzammil