Chyby s mernými jednotkami v JavaScripte
Často sa ľahko môžeme pomýliť a zabudnúť na merné jednotky. Napríklad takto:
let width = 100;
elem.style.width = width; // ups...
Správne by bolo uviesť hodnotu v pixeloch:
let width = 100;
elem.style.width = width + 'px';
Predstavme si, že chceme zväčšiť
šírku o určitú hodnotu. Na to
potrebujeme najprv prečítať šírku,
potom extrahovať číslo, pripočítať k nemu
požadovanú hodnotu, pridať 'px'
a až potom zapísať späť:
let widthPx = elem.style.width;
let widthNm = parseInt(widthPx);
elem.style.width = (widthNm + 30) + 'px';
Vysvetlite, v čom je chyba v nasledujúcom kóde:
<div style="font-size: 16px;">
text
</div>
let elem = document.querySelector('div');
elem.style.fontSize = elem.style.fontSize + 2;
Vysvetlite, v čom je chyba v nasledujúcom kóde:
<div style="font-size: 16px;">
text
</div>
let elem = document.querySelector('div');
elem.style.fontSize = parseInt(elem.style.fontSize + 2) + 'px';
Vysvetlite, v čom je chyba v nasledujúcom kóde:
<div style="font-size: 2.5em;">
text
</div>
let elem = document.querySelector('div');
elem.style.fontSize = parseInt(elem.style.fontSize) + 2 + 'em';
Daný div:
<div id="elem" style="width: 300px; height: 200px; border: 1px solid red;">
text
</div>
Dané aj tlačidlo. Pri kliknutí na tlačidlo
zväčšite šírku a výšku divu o
50px.
Daný div:
<div id="elem" style="width: 300px; height: 200px; border: 1px solid red;">
text
</div>
Dané aj tlačidlo. Pri kliknutí na tlačidlo
zväčšite šírku a výšku divu o
10%.