Solución:
Solo agarrando el style.fontSize
de un elemento puede no funcionar. Si el font-size
está definido por una hoja de estilo, esto informará ""
(cuerda vacía).
Debe utilizar window.getComputedStyle.
var el = document.getElementById('foo');
var style = window.getComputedStyle(el, null).getPropertyValue('font-size');
var fontSize = parseFloat(style);
// now you have a proper float for the font size (yes, it can be a float, not just an integer)
el.style.fontSize = (fontSize + 1) + 'px';
Si su elemento no tiene la propiedad de tamaño de fuente, su código devolverá una cadena vacía. No es necesario que su elemento tenga la propiedad de tamaño de fuente. El elemento puede heredar las propiedades de los elementos principales.
En este caso, debe encontrar el tamaño de fuente calculado. Prueba esto (no estoy seguro de IE)
var computedFontSize = window.getComputedStyle(document.getElementById("foo")).fontSize;
console.log(computedFontSize);
La variable computedFontSize regresará con el tamaño de fuente con unidad. La unidad puede ser px, em,%. Necesita quitar la unidad para hacer una operación aritmética y asignar el nuevo valor.
Si está utilizando Jquery, la siguiente es la solución.
var fontSize = $("#foo").css("fontSize");
fontSize = parseInt(fontSize) + 1 + "px";
$("#foo").css("fontSize", fontSize );
Espero que esto funcione.