Pourquoi ne pas javascript, des retours à la ligne de travail à l'intérieur du html?
J'ai donc le suivant:
<html> <body> <script type="text/javascript"> document.write('Bonjour\nWorld') </script> </body> </html>
Comme vous le savez tous probablement \n ne fonctionne pas et que je dois utiliser <br> au lieu de cela.
Il ne fonctionne pas, soit si je créer un lien vers un fichier js externe. Voici mes questions:
1) Pourquoi ne pas \n
travail?
2) Pourquoi ne <br> encore du travail? Ne devriez pas tout ce qui est à l'intérieur du script
tags être strictement javascript au lieu d'un sale mélange entre le html et le js?
3) Est-il possible de faire \n
travailler en quelque sorte?
4) je sais \t
ne fonctionne pas non plus. Tout les autres trucs qui ne fonctionnent pas à l'intérieur
fichiers html?
5) sans rapport avec la question (je n'ai pas l'intention d'ouvrir une nouvelle question juste pour cela).
J'ai installé node.js pour être en mesure de tester les scripts javascript à partir de l'intérieur de vim, mais
lorsque j'exécute ce script, j'obtiens l'erreur "le document n'est pas défini". La même chose se passe lorsque j'essaie de le repl. Des idées?
Btw, je sais que ces questions ont probablement été posée un million de fois, mais honnêtement, je n'arrivais pas à trouver les bonnes réponses, je n'ai eu que je devrais utiliser <br>
au lieu de \n
. Merci pour toute aide.
OriginalL'auteur user723636 | 2011-04-25
Vous devez vous connecter pour publier un commentaire.
\n
travaux, si vous avez un débogueur de toutes sortes (ou similaire développeur de l'outil), vous pouvez voir le document source, et vous verrez qu'il y a en effet un caractère de saut de ligne. Le problème est la façon dont vous regardez la page - vous êtes pas la lecture de la source, vous êtes en train de lire comme un document html. Les espaces dans le html est compressé dans un seul espace. Ainsi, lorsque vous changez de source, il ne fait changement, même s'il est interprété comme un document html, que le changement n'est pas montré.Votre node.js l'erreur est probablement causée par le fait que vous êtes le navigateur en cours d'exécution des scripts sur le serveur. I. e. les scripts qui font référence à la
document
sont destinés à être exécuté dans un navigateur, où il y a un DOM etc. Bien qu'un nœud générique processus n'a pas besoin d'un tel objet, car il n'est pas un navigateur. Ainsi, lorsque vous essayez d'exécuter du code qui fait référence à un objet global appelé document sur l'hypothèse qu'il existe, tout comme dans le navigateur, il renvoie une erreur.document.write
n'existe pas, si vous voulez écrire à l'écran, essayez deconsole.log
ou regarder dans l'autre util fonctions.OriginalL'auteur davin
Parce que l'espace blanc est juste un espace blanc dans le HTML.
Parce que c'est le code HTML pour un saut de ligne
C'est subjectif.
document.write
est considéré comme sale par beaucoup.Vous pouvez toujours utiliser createElement et createTextNode
pré, white-space
HTML n'est pas en texte brut. Liste de toutes les différences prendrait du temps, et hors de la portée de StackOverflow. Essayez de lire le cahier des charges.
C'est complètement différent. Ouvrir une nouvelle question.
OriginalL'auteur Quentin
Quand HTML rend, elle ignore les espaces. Donc, la seule façon est d'utiliser des sauts de ligne.
Utilisation
<br/>
au lieu de\n
et il fonctionne parfaitementLa
document.write()
fonction écrit HTML dans l'élément.OriginalL'auteur Chris Kooken
Lorsque vous écrivez à la page, vous n'êtes pas écrire du code JavaScript; vous êtes à l'écriture de code HTML. \n est un spécial "saut de ligne", un personnage qui n'est pas de créer un saut de ligne dans le navigateur du rendu de l'HTML. Il PERMETTRA de créer un saut de ligne dans le fichier HTML, mais le navigateur ne prend pas cela en considération quand il rend le balisage.
Ainsi, la balise br est nécessaire.
OriginalL'auteur BraedenP
Utiliser la balise html
<br/>
à l'entrée des fins de ligne (votre sortie est interprété par un analyseur html), par exemple:Javascript:
OriginalL'auteur Spliffster
Espaces émis par JavaScript fonctionne comme n'importe quel autre espace dans votre fichier HTML. Qui semble le comportement attendu de moi.
OriginalL'auteur Jonathan Wood
1)
\n
œuvres dans des fichiers de texte brut.2)
<br />
fonctionne parce que vous faites le code HTML dans la chaîne. Les chaînes peuvent contenir des caractères sans casser le reste de la JS script.3) Pas vraiment. Peut-être lorsque vous utilisez
<textarea>
s.4) la Plupart des autres
\*
's5) Plus d'infos nécessaires.
OriginalL'auteur mattsven
1,3. "\n" ne fonctionne pas. Si vous faites un document.écrire à l'intérieur de la balise body vous pouvez vérifier le document.corps.innerHTML et de voir que le saut de ligne est bien là.
4.Rien HTML spécifique sera rendu HTML spécifique, de sorte que vous aurez à s'échapper
<
et>
en<
et>
par exemple.5.
document
est un objet disponible dans les navigateurs, il n'est pas utilisé dans le nœud depuis les DOM il n'y existe pas.require("sys");
et utiliser sys.imprimer en nodejs.OriginalL'auteur Adam Bergmark
La
document
objet représente un document HTML; tout texte écrit pour le document doit être traité par le navigateur du moteur de rendu HTML. En HTML, tous les espaces adjacents, y compris les sauts de ligne (par exemple,"\n"
), sont regroupées dans un seul espace lors du rendu. C'est pourquoi vous avez besoin de<br />
, qui est rendu par un saut de ligne. Vous pouvez faire\n
de travail, en les remplaçant par<br />
ou par écrit dans un<pre>
élément:OriginalL'auteur Mark Cidade
Fait que votre code fonctionne. Lorsque vous l'exécutez sur le navigateur de la console comme Firefox, il va vous montrer:
Remarque sur la Bonjour, et d'un Monde qui est séparé.
Mais lors de l'affichage sur HTML, de rupture de ligne (espace) sera omis.
À afficher, "comme", vous pouvez entourer le javascript avec AVANT la balise:
Vous obtiendrez votre saut de ligne affichées sur le code HTML.
OriginalL'auteur Aryo Sanjaya
Tout le monde a dit ce qu'il devait être dit, mais dans le cas où si vous êtes à l'aide de firebug/chrome console Javascript ..alors essayez cette >
console.log("Hello\nWorld");
C'est la principale différence. Lors de l'impression de quelque chose en HTML, le HTML, les règles s'appliquent. D'ailleurs vous pouvez voir la ligne des pauses de travail.
OriginalL'auteur neebz
Utilisation
<pre></pre>
sur le code html et de respecter le format de texte JS.OriginalL'auteur NATHAN SILVA SANTOS