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-Key: 204401

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

Printed on: April 26, 2024 at 09:04 o'clock

Member: nxclass
nxclass Apr 04, 2013 updated at 10:22:13 (UTC)
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 );  
Member: nxclass
nxclass Apr 04, 2013 updated at 10:26:53 (UTC)
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.
Member: Sokrates
Sokrates Apr 04, 2013 at 11:58:53 (UTC)
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.
Member: Sokrates
Sokrates Apr 04, 2013 at 23:32:49 (UTC)
Goto Top
Nach ein paar anfänglichen Schwierigkeiten ist die Integration gelungen.