字体大小调整器Javascript在IE8和IE7中不工作
我正试图在我公司的网站上安装一个字体大小调整器,因为我们的很多客户都是老年人,他们不知道Ctrl++ 这是我们的密码。在FF、Chrome和IE9下,重定尺寸器工作良好。但不是在IE8和IE7中。我在这里省略了创建cookies/读取cookies部分字体大小调整器Javascript在IE8和IE7中不工作,javascript,internet-explorer-8,fonts,resize,internet-explorer-7,Javascript,Internet Explorer 8,Fonts,Resize,Internet Explorer 7,我正试图在我公司的网站上安装一个字体大小调整器,因为我们的很多客户都是老年人,他们不知道Ctrl++ 这是我们的密码。在FF、Chrome和IE9下,重定尺寸器工作良好。但不是在IE8和IE7中。我在这里省略了创建cookies/读取cookies部分 function createCookie(name,value,days) {.....codes for create cookies......} function changeFont(incfont) { try{
function createCookie(name,value,days) {.....codes for create cookies......}
function changeFont(incfont) {
try{
var p = document.getElementsByClassName('resizable');
for(n=0; n<p.length; n++) {
if(p[n].style.fontSize) {
var size = parseInt(p[n].style.fontSize.replace("px", ""));
} else {
var size = parseInt(window.getComputedStyle(p[n],null).getPropertyValue('font-size').replace("px", ""));
}
p[n].style.fontSize = size+ incfont + 'px';
}
p = document.getElementsByTagName('p');
for(n=0; n<p.length; n++) {
if(p[n].style.fontSize) {
var size = parseInt(p[n].style.fontSize.replace("px", ""));
} else {
var size = parseInt(window.getComputedStyle(p[n],null).getPropertyValue('font-size').replace("px", ""));
}
p[n].style.fontSize = size+ incfont + 'px';
}
} catch(err) {}
}
function readCookie(name) { ....code for read cookies ....}
function increaseFontSize() {
var inc=0;
try {
var x = readCookie('textsize')
if (x && x!=0) {
x = parseInt(x);
inc = x;
}
} catch (e) {}
if (inc<3) {
inc++;
changeFont(1);
createCookie('textsize',inc,1);
}
}
function decreaseFontSize() {
var inc=0;
try {
var x = readCookie('textsize')
if (x && x!=0) {
x = parseInt(x);
inc = x;
}
} catch (e) {}
if (inc>0) {
inc--;
changeFont(-1);
createCookie('textsize',inc,1);
}
}
函数createCookie(名称、值、天数){……创建cookie的代码……}
函数更改字体(incfont){
试一试{
var p=document.getElementsByClassName('可调整大小');
for(n=0;ngetComputedStyle
不适用于9之前的IE
见:
此处可能提供修复程序:
我没有测试它
祝你好运!我觉得你的解决方案太复杂了,我建议你采用不同的方法,为页面正文设置基本文本大小,然后为其余元素设置百分比字体大小,这样当你想调整所有站点的文本大小时,你只需执行以下操作:
$("body").css("font-size", newFontSize);
非常感谢Nelson的回答!你的想法很有道理。作为一名javascript新手,以下问题可能看起来很愚蠢。我可以替换$('body')吗使用TagName或ClassName?因为我们不会更改整个主体区域的字体大小。再次感谢!-YN感谢Elyx0!我不知道getComputedStyle不适用于9之前的IE…将查看您提供的资源。谢谢!-YN