Napake z merskimi enotami v JavaScript
Pogosto je enostavno narediti napako in pozabiti na merske enote. Na primer, takole:
let width = 100;
elem.style.width = width; // ups...
Pravilno je navesti vrednost v slikovnih pikah:
let width = 100;
elem.style.width = width + 'px';
Predstavljajmo si, da želimo povečati
širino za določeno vrednost. Za to
moramo najprej prebrati širino,
nato izluščiti številko, ji prišteti
želeno vrednost, dodati 'px'
in šele nato zapisati nazaj:
let widthPx = elem.style.width;
let widthNm = parseInt(widthPx);
elem.style.width = (widthNm + 30) + 'px';
Razložite, v čem je napaka v naslednji kodi:
<div style="font-size: 16px;">
text
</div>
let elem = document.querySelector('div');
elem.style.fontSize = elem.style.fontSize + 2;
Razložite, v čem je napaka v naslednji kodi:
<div style="font-size: 16px;">
text
</div>
let elem = document.querySelector('div');
elem.style.fontSize = parseInt(elem.style.fontSize + 2) + 'px';
Razložite, v čem je napaka v naslednji kodi:
<div style="font-size: 2.5em;">
text
</div>
let elem = document.querySelector('div');
elem.style.fontSize = parseInt(elem.style.fontSize) + 2 + 'em';
Podan je div:
<div id="elem" style="width: 300px; height: 200px; border: 1px solid red;">
text
</div>
Podan je tudi gumb. Ob kliku na gumb
povečajte širino in višino div-a za
50px.
Podan je div:
<div id="elem" style="width: 300px; height: 200px; border: 1px solid red;">
text
</div>
Podan je tudi gumb. Ob kliku na gumb
povečajte širino in višino div-a za
10%.