Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [js] Dlaczego nie działa \n, Przejscie do nowej linii...
Terrqge
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 25.11.2011

Ostrzeżenie: (0%)
-----


Dopiero zaczynam uczyć się js'a i już napotkałem problem z przejściem do następnej linii. Może to i banalne, ale...

Mam plik html'a w standardzie XHTML 1.0 Strict.
A w nim:
  1. <script type="text/javascript" src="js/skrypt2.js" charset="utf-8"></script>


Natomiast skrypt2.js wygląda tak...
Kod
document.write("Pierwsza linia\n");
document.write("Druga linia\n");

...i wszystko wyświetla się w jednej linii... Czemu przejście do następnej linii w ten sposób nie działa?

Ewentualnie napisałem coś takiego

Kod
document.write("Pierwsza linia"+" <br>");
document.write("Druga linia"+" <br>);

...i wtedy działa. Ale czy to do końca jest poprawne? Zresztą, szybciej i prościej użyć \n. Co robie źle?

Ten post edytował Terrqge 25.11.2011, 21:48:07
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kamil4u
post
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


W takim razie ja postaram się wytłumaczyć (IMG:style_emoticons/default/smile.gif)
Gdy w HTML napiszesz:
Kod
<html>
<body>
  Pierwszy wiersz
  Drugi wiersz
  Trzeci wiersz
</body>
</html>
To wynikiem będzie: Pierwszy wiersz Drugi wiersz Trzeci wiersz. W rzeczywistości nie ma czegoś takiego jak entery, a znaki specjalne np. \n(nowy wiersz) czy \t(tabulator). Idąc tym tokiem rozumowania nasz kod tak naprawdę wygląda tak:
Kod
<html>\n <body>\n  Pierwszy wiersz\n  Drugi wiersz\n  Trzeci wiersz\n </body>\n</html>


Aby w HTML uzyskać nowy wiersz używamy <br>. Czyli nasz kod powinien wyglądać tak:
Kod
<html>
<body>
  Pierwszy wiersz<br>
  Drugi wiersz<br>
  Trzeci wiersz
</body>
</html>
, czyli w rzeczywistości:
Kod
<html>\n <body>\n  Pierwszy wiersz<br>\n  Drugi wiersz<br>\n  Trzeci wiersz\n </body>\n</html>


Teraz JS. Zapis:
Cytat
var n = "pierwsza linia\ndrugal linia\ntrzecia linia";
document.write(n);

Działa tak jakbyś ręcznie napisał:
Cytat
pierwsza linia
drugal linia
trzecia linia
, a że HTML czyta tylko <br> użytkownikowi na ekranie nic się nie zmienia.

Mam nadzieję, że zrozumiałeś (IMG:style_emoticons/default/smile.gif) - prościej nie umiem
Pewnie w tym co napisałem jest trochę nieprawdy, ale jak dla początkującego może być i tego się powinieneś trzymać (IMG:style_emoticons/default/smile.gif)

Pozdrawiam

Ten post edytował kamil4u 26.11.2011, 18:44:04
Go to the top of the page
+Quote Post

Posty w temacie
- Terrqge   [js] Dlaczego nie działa \n   25.11.2011, 21:46:25
- - wookieb   Poprawne. W htmlu nowa linia to <br/> a nie ...   25.11.2011, 22:00:17
- - Terrqge   W takim razie dlaczego w różnych kursach itp, używ...   25.11.2011, 22:03:17
- - nospor   Cytatkim razie dlaczego w różnych kursach itp, uży...   25.11.2011, 22:04:46
- - Terrqge   Aha... W takim razie na tej stronie w tabelce 2.1...   25.11.2011, 22:09:57
- - nospor   Yyy, to że ktoś napisał \n - nowy wiersz to ...   25.11.2011, 22:13:24
- - Terrqge   Dziękuję za odpowiedź... Ależ ja nawet nie próbuj...   25.11.2011, 22:18:17
- - nospor   W edytorze tekstu Nowa linia w edytorze tekstu to...   25.11.2011, 22:22:13
|- - Kaloryfer   Cytat(nospor @ 25.11.2011, 23:22:13 )...   26.11.2011, 02:13:26
- - Terrqge   Wybacz, ale nie zrozumiałem tego ostatniego przykł...   25.11.2011, 22:44:56
- - wookieb   http://www.google.pl/search?q=css+white-sp...lient...   25.11.2011, 22:45:42
- - Terrqge   No ok i co dalej. Mam dać white-space:nowrap do c...   25.11.2011, 22:59:30
- - wookieb   Użyj http://jsfiddle.net i pokaż co masz.   25.11.2011, 23:02:58
- - Terrqge   A cóż miałbym mieć? Mam cały czas to samo.... htm...   25.11.2011, 23:08:05
- - wookieb   [HTML] pobierz, plaintext <div id="contain...   25.11.2011, 23:11:25
- - Terrqge   Ok, ale to działa w obrębie Html'a, a nie moje...   25.11.2011, 23:15:36
- - wookieb   Przecież dostałeś JASNĄ odpowiedź, że w htmlu to t...   25.11.2011, 23:19:11
- - Terrqge   Chodzi mi o to, że skoro nie działa w HTMLu to gdz...   25.11.2011, 23:23:17
- - nospor   Cytati tak nikt nie jest w stanie udzielić mi odpo...   26.11.2011, 09:25:29
|- - Terrqge   Cytat(nospor @ 26.11.2011, 09:25:29 )...   26.11.2011, 20:53:10
- - kamil4u   W takim razie ja postaram się wytłumaczyć Gdy w H...   26.11.2011, 18:43:14
- - everth   W sumie w HTML można wymusić pokazywanie znaków sp...   26.11.2011, 19:00:29
- - alexandrus   Może autor programuje też np. w C czy innym języku...   27.11.2011, 14:16:43
- - Terrqge   Dzięki za rozwianie wątpliwości. Problem uważam za...   27.11.2011, 16:45:22


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 17.10.2025 - 05:00