как насчет обновления вашего кода следующим образом:
function changeFontSize(element,step)
{
function computeFontSizeUpdate(oE)
{
//- init fSize with proper null value
var fSize = null;
//- retrieve fSize from style
if (oE.currentStyle) {
fSize = parseInt(oE.currentStyle[styleProp], 10);
}
else if (window.getComputedStyle) {
var s = document.defaultView.getComputedStyle(oE,null);
fSize = (s) ? parseInt(s.getPropertyValue(styleProp),10) : NaN;
}
//- check fSize value based on return of parseInt function
if( isNaN(fSize) == false && fSize != null)
{
fSize += nStep + 'px';
if(oE.currentStyle)
oE.currentStyle.fontSize = fSize;
else
oE.style.fontSize = fSize;
}
};
var styleProp = 'font-size';
var nStep = parseInt(step, 10);
//- ensure step value
if( isNaN(nStep) ) nStep = 0;
//- get target elements
var oElems = document.getElementsByName(element);
if ( oElems && oElems.length == 0)
{
var oE = document.getElementById(element);
if(oE) computeFontSizeUpdate(oE);
}
else
{
for(oE in oElems)
{
computeFontSizeUpdate(oE);
}
}
}
Я обновил скрипт с исправлением и несколько улучшил именование некоторых переменных.
Кроме того, я сожалею, потому что я нахожусь наMac прямо сейчас, я не смог протестировать предоставленный скрипт в IE ... но насколько я помню, это должно сработать.
Используя некоторую консоль JS, вы можете напрямую выполнить ее прямо на этой странице
changeFontSize("nav-tags", 50);
и вы заметите, что элемент Теги в строке меню будет затронут:)
Надеюсь, это поможет