• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zmiana wielkości nagłówka poprzez wybór z listy

Object Storage Arubacloud
0 głosów
179 wizyt
pytanie zadane 9 lipca 2017 w JavaScript przez Pasioo Nowicjusz (240 p.)

Witam. Oglądałem film Pana Mirosława w którym mówił, żeby udzielać się na forach jeśli chce się polepszyć skilla. No to się udzielę. Otóż chciałem napisać sobie coś dla rozrywki w HTML+Js i zacząłem coś takiego, co wpisuje w h1 wpisany w prompt text. Dodałem też listę dzięki której można by zmieniać wielkość nagłówka. Rzecz w tym, że działa to tylko częściowo, to znaczy można powiedzieć jednorazowo. Trzeba odświeżać stronę po każdej zmianie wielkości. Moje pytanie brzmi jak można by to przerobić aby działało bez konieczności przeładowania strony. Jeżeli to co do tej pory zrobiłem jest jakieś dziwne, zagmatwane to proszę o prostsze rozwiązania. Chętnie się czegoś nauczę.

Wklejam tutaj Jest mieszany kod. Robiłem to w jednym pliku więc może być trochę bałagan. Pozdrawiam.

2 odpowiedzi

+1 głos
odpowiedź 9 lipca 2017 przez wotaher Użytkownik (610 p.)
wybrane 9 lipca 2017 przez Pasioo
 
Najlepsza

Cześć, sam jestem początkujący ale przysiadłem nad Twoim problemem i o to co udało mi się naskrobać. Pierwszą sprawą jest to że kod był dość nieczytelny i ja bym zamienił nazwy zmiennych na bardziej oczywiste.

Mój HTML:

<h1 id="naglowek">Domyślny</h1>
<form>
<select id="formularz">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select>
</form>

Moja wersja JS-a zmieniająca tag nagłówka wygląda tak:

document.getElementById("formularz").addEventListener("change",function() {zmiana(this,"naglowek")});
function zmiana(form,identyfikator){
	var element = document.getElementById(identyfikator),
	wynikFormularza = form.value,
	rozmiar = "h" + wynikFormularza,
	nowyElement = document.createElement(rozmiar),
	rodzic = element.parentNode;
	
	nowyElement.innerHTML = element.innerHTML;
	nowyElement.id = identyfikator;
	rodzic.replaceChild(nowyElement,element);
}

Ze względu na późną godzinę nie będę tłumaczył krok po kroku działania. Mam nadzieję że poradzisz sobie z ogarnięciem tego sam, jeśli nie to pytaj a ja odpowiem rano.

komentarz 9 lipca 2017 przez Pasioo Nowicjusz (240 p.)
No dobra działa. Może trochę źle robię, że próbuję pisać takie coś bez odpowiedniej wiedzy (bo nie douczyłem się za bardzo jak operować na funkcjach np, a nie mogę się zebrać do przerobienia całej serii o JS na YT). Tak czy siak dzięki za pomoc. Będę sobie to jeszcze analizował :] Jak chcesz się jeszcze pobawić w naprawianie czyjegoś kodu to mogę podesłać skrypcik na zmianę kontrastu z użyciem sessionStorage. Napisałem tam tyle linijek, że aż strach czytać, a myślę, że ktoś bardziej doświadczony zrobiłby to zajmując mniej miejsca.

Ale się rozpisałem...
komentarz 9 lipca 2017 przez wotaher Użytkownik (610 p.)

Proponuję dodać to jako zapytanie tutaj na forum, chętnię to przejrzę nie tylko ja :). Ja sam mam dużo braków ale staram się je nadrobić. Ja korzystam z kursu W3Schools i bardzo go polecam.

komentarz 9 lipca 2017 przez Pasioo Nowicjusz (240 p.)
+1 głos
odpowiedź 9 lipca 2017 przez Fenix Nałogowiec (26,750 p.)

Zamiast onclicka użyj addEventListener, zamiast eventu click użyj change, do samych funkcji nie zaglądałem. 

Takie coś zamiast onclicka na elemencie select. 

document.querySelector('select').addEventListener("change",function() { rozmiar(); });

 

Podobne pytania

0 głosów
2 odpowiedzi 103 wizyt
pytanie zadane 10 października 2018 w JavaScript przez Arek Stencel Nowicjusz (160 p.)
0 głosów
0 odpowiedzi 991 wizyt
pytanie zadane 10 sierpnia 2018 w HTML i CSS przez czujek22 Dyskutant (7,670 p.)
0 głosów
1 odpowiedź 261 wizyt

92,579 zapytań

141,432 odpowiedzi

319,664 komentarzy

61,964 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...