Schriftgrösse mit Javascript ändern


#1
Hallo,

versuche vergebens die schriftgrösse per JavaScript ändern zu lassen, aber klappt nicht.

Meine Javascipt habe ich wie folgt:
Javascript:
function change_font() {
    document.getElementsByTagName('body').style.fontSize = '10px';
}
Meine css:

CSS:
body {
    font-family: 'Roboto', sans-serif;
    line-height: 1.5em;
    font-size: 16px;
}
Müsste doch jetzt eigentlich die schriftgrösse in meinem "body" auf 10px setzen. Macht er aber nicht.
Ist irgendwas an der Syntax vom JavaScript falsch?
 
#3
Nein jQuery verwende ich nicht.
Habe in meiner HTML folgendes stehen:

HTML:
<a href="" onclick="change_font()"><div id="text_bigger"><small>A</small> &rarr; A</div></a>
wenn ich draufklicke, wird für eine sekunde die textgrösse geändert, er springt aber immer wieder zurück auf den alten Wert.
 
#4
Ok, ich habe glaube den fehler.
Wenn ich meinen Javascript in einer einfachen div container aufrufe, funktioniert es.
Ich glaube hier habe ich was falsch. In einer referenz ein div container ist glaube ich nicht so gut.
HTML:
<a href="" onclick="change_font()"><div id="text_bigger"><small>A</small> &rarr; A</div></a>
 

Tommy57

Erfahrenes Mitglied
#5
Naja, du verwendest einen Link. Dieser lädt die Seite neu. Deswegen siehst du den Effekt auch nur ganz kurz. Entweder verwendest du keinen Link, oder du schreibst href="#" oder schreibst onclick="change_font();return false;"
 
#6
jetzt funktioniert es wieder nicht mehr. Ich bin echt am verzweifeln.
Was ist denn hier falsch?

JS
Javascript:
function change_font() {
    document.getElementsByTagName('body').style.fontSize = '50px';
}
HTML

HTML:
<div onclick="change_font()" class="text_size" id="text_bigger">A+</div>
 

basti1012

Erfahrenes Mitglied
#7
kein wunder das es nicht geht.

probier es mal so
Code:
function change_font() {
    document.getElementsByTagName('body')[0].style.fontSize = '50px';
}
By TagName und ClassName gehöhrt eine Zahl hinter dem ('bla')[0];
By einer id (weil die nur einmal ein einen dokument vorkommen darf) darf keine Zahl stehen
 
#13
Vielen dank für deine Hilfe erstmals.

Es wird mir folgende fehlermeldung wird mir angezeigt:
Code:
TypeError: document.getElementsByTagName(...)[0] is undefined[Weitere Informationen] ajax.js:403:5
[LIST]
[*]    change_font file:///C:/Users/*****/Desktop/Background/js/ajax.js:403
[*]    onclick file:///C:/Users/*****/Desktop/Background/index.html#staedte:1
[/LIST]
Werde mal die seite hochladen und poste den link gleich.