Mam problem odnośnie zwiększania wielkości czcionki.
Kod
function zmien()
{
var aktualnyRozmiar;
var piksel;
aktualnyRozmiar=document.rozmiar.ukrytySmok.value;
var tekst=document.getElementById("text");
if (aktualnyRozmiar>5 && aktualnyRozmiar<25)
{
aktualnyRozmiar++;
document.rozmiar.ukrytySmok.value = aktualnyRozmiar;
piksel=aktualnyRozmiar +'px';
tekst.style.fontSize=piksel;
}
}
{
var aktualnyRozmiar;
var piksel;
aktualnyRozmiar=document.rozmiar.ukrytySmok.value;
var tekst=document.getElementById("text");
if (aktualnyRozmiar>5 && aktualnyRozmiar<25)
{
aktualnyRozmiar++;
document.rozmiar.ukrytySmok.value = aktualnyRozmiar;
piksel=aktualnyRozmiar +'px';
tekst.style.fontSize=piksel;
}
}
Kod
<form name="rozmiar">
<input type="button" value="powieksz" onClick="zmien()" />
<input type="button" value="zmniejsz" onClick="zmien2()" />
<input type="hidden" value="12" name="ukrytySmok" />
</form>
<p id="text">Tekst...</p>
<input type="button" value="powieksz" onClick="zmien()" />
<input type="button" value="zmniejsz" onClick="zmien2()" />
<input type="hidden" value="12" name="ukrytySmok" />
</form>
<p id="text">Tekst...</p>
Kod składa się z 2 funkcji które różnią się tylko nazwą i tym, że jedna inkrementuje wartość a druga dekrementuje.
Powyższy przykład pokazuje tylko funkcje inkrementującą. Teoretycznie && nie jest potrzebne ale niech zostanie.
Problemy są następujące:
- z tego co się orientuje nie ma możliwości zbadania aktualnego rozmiaru czcionki więc zastosowałem pole typu hidden do przechowywania obecnej wartości. Czy zna ktoś lepsze rozwiązanie.
-Po przekroczeniu warunku nie można ani zwiększyć ani zmniejszyć rozmiaru czcionki. Trzeba przeładować stronę.
Zastosowanie else nie ma tutaj racji bytu ponieważ nie ma sensu by było coś wykonywane.
-Czy istnieje sposób aby z 2 funkcji zrobić jedną bo być może rozwiąże to problem. Chodzi o to aby na obu przyciskach znajdowało się odniesienie do tej funkcji (onClick="zmien()") , która to będzie rozpoznawać który przycisk został wciśnięty i zależnie od tego będzie zwiększać/zmniejszać czcionkę.
Słyszałem o rozpoznawaniu eventu czyli np można wykryć rodzaj zdarzenia mousein albo click ale nic mi nie wiadomo o rozpoznawaniu wciśniętego buttona.