sokrates
Goto Top

FontSize ist nicht variabel (JS- oder CSS-Fehler?)

Hello World!

Ich versuche vergeblich mit dem folgenden Skript auf einer Seite per Klick auf ein Plus- bzw. Minuszeichen die Schriftgröße zu vergrößern bzw. zu verkleinern, allerdings tut sich gar nichts. JS ist selbstverständlich aktiviert und ich habe es auch mit verschiedenen Browsern versucht.

Mein JS-File hat folgenden Code:
function resizeText(multiplier) {
  if (document.body.style.fontSize == "") {  
    document.body.style.fontSize = "1.0em";  
  }
  document.body.style.fontSize = parseFloat(document.body.style.fontSize) + (multiplier * 0.2) + "em";  
}

Eingebunden wird es mit:
<script language="text/javascript" src="/js/fontsize.js"></script>  

Die Verlinkung erfolgt durch:
<a href="javascript:resizeText(-1);">A-</a>   
<a href="javascript:resizeText(0);">A</a>  
<a href="javascript:resizeText(1);">A+</a>  

Ich habe auch versucht, ein Skript aus dem Internet zu verwenden (Link), allerdings ging es auch damit nicht.

Sieht jemand (m)einen Fehler?

Content-ID: 204401

Url: https://administrator.de/contentid/204401

Ausgedruckt am: 20.11.2024 um 05:11 Uhr

nxclass
nxclass 04.04.2013 aktualisiert um 12:22:13 Uhr
Goto Top
Existiert denn die CSS Eigenschaft font-size im body deiner CSS Konfiguration ?
... wenn nicht setze diese mal auf einen Default wert und versuche es nochmal.
body { font-size: 1em; }

nützlich bei so was ist die Erweiterung FireBug und die JS Befehle:
console.log( 'Lognachticht, JS Objekt, ...' );  
/* zB. */
console.log ( 'fontSize: '+document.body.style.fontSize );  
nxclass
nxclass 04.04.2013 aktualisiert um 12:26:53 Uhr
Goto Top
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
        <script>
function resizeText(multiplier) {
  if (document.body.style.fontSize == "") {  
    document.body.style.fontSize = "1.0em";  
  }
  document.body.style.fontSize = parseFloat(document.body.style.fontSize) + (multiplier * 0.2) + "em";  
}            
        </script>
    </head>
    <body style="font-size:1em;">  
        <div>TODO write content</div>
<a href="javascript:resizeText(-0.5);">A-</a>   
<a href="javascript:resizeText(0);">A</a>  
<a href="javascript:resizeText(0.5);">A+</a>          
    </body>
</html>
... geht wunderbar.
Sokrates
Sokrates 04.04.2013 um 13:58:53 Uhr
Goto Top
Tatsächlich hatte ich in meiner CSS keine font-size definiert. Ich schaue später mal, ob ich das so in mein CMS integriert bekomme.
Sokrates
Sokrates 05.04.2013 um 01:32:49 Uhr
Goto Top
Nach ein paar anfänglichen Schwierigkeiten ist die Integration gelungen.