我有一些代码可以增加/减少字体大小。这让我很头疼,因为每个浏览器似乎都以不同的方式实现$.css('font-size')
(see jquery bug)。但是,真正让我失望的部分是Firefox正在扩展,但是当我使用下面的缩小功能时,可以扩展。 Webkit& IE都按预期工作。有什么想法?
我把它放在这里:http://jsfiddle.net/srQ3P/1/你可以看到它按预期工作,你可以在项目页面的Firefox中看到它被打破:http://cumberlandme.info/residents
对不起,问题不在于代码,而是firefox buggy行为。在我使用浏览器控件(ctrl + plus或ctrol + minus)放大或缩小后,js变得混乱。这在其他浏览器中不会发生。这是真正的问题。关于的任何建议
答案 0 :(得分:0)
这种情况下的问题是我的javascript文本缩放功能。我使用的原始函数(在线找到)在正文字体样式中查找特定的em值,如果找不到,则将字体大小重置为“1em”。像这样:
if (document.body.style.fontSize == "")
document.body.style.fontSize = "1em";
document.body.style.fontSize = parseFloat(document.body.style.fontSize) + (multiplier * 0.1) + "em";
这对IE(但为什么,我不知道)有效,但不是Ffx。因此我提出的解决方案是IE,并根据浏览器是否为IE进行稍微不同的操作。 jQuery文档建议不要以这种方式检查浏览器,但是无论如何我都做了!
var currSz = parseFloat($('body').css('font-size'));
Math.round(currSz);
if($.browser.msie)
currSz++;
else
currSz = currSz + .7;
$('body').css('font-size',currSz);