Javascript 获取IE和Firefox错误:解析值时出错';xxx';。声明被撤销
以下是指向我的页面的链接:。我在所有浏览器上都遇到了问题,虽然它在Firefox和Chrome中工作,但在IE中不工作。我需要修复Firefox和IE中出现的这个解析错误,以便它a)在Fox中不显示错误,b)在IE中实际工作。请帮助!谢谢大家! 有几件事你应该看看 首先,在IE(6,7,8)window.innerHeight中不存在,您可以使用以下选项:Javascript 获取IE和Firefox错误:解析值时出错';xxx';。声明被撤销,javascript,html,css,Javascript,Html,Css,以下是指向我的页面的链接:。我在所有浏览器上都遇到了问题,虽然它在Firefox和Chrome中工作,但在IE中不工作。我需要修复Firefox和IE中出现的这个解析错误,以便它a)在Fox中不显示错误,b)在IE中实际工作。请帮助!谢谢大家! 有几件事你应该看看 首先,在IE(6,7,8)window.innerHeight中不存在,您可以使用以下选项: var h = (document.documentElement.clientHeight/2)-17; 另一个问题是,一旦字母在屏幕中
var h = (document.documentElement.clientHeight/2)-17;
另一个问题是,一旦字母在屏幕中央匹配,就不会停止已经启动的计时器。这意味着它们将继续运行并生成错误,因为变量topLetters和bottomLetters现在大于数组topPos和bottomPos的大小
函数setInterval返回对其计时器的引用,因此可以使用以下代码
var topTimer, bottomTimer;
function startSnowing() {
topTimer = setInterval("topFall()",10);
bottomTimer = setInterval("bottomRise()",10);
}
将topFall()和bottomRise()方法更改为
function bottomRise() {
if (bottomLetters < bottomPos.length) {
document.getElementById("bottomLetters").style.bottom = bottomPos[bottomLetters] + "px";
bottomLetters++;
}
else {
clearInterval(bottomTimer);
}
}
函数底升(){
if(底部字母<底部位置长度){
document.getElementById(“bottomLetters”).style.bottom=bottomPos[bottomLetters]+“px”;
底部字母++;
}
否则{
清除间隔(底部计时器);
}
}
希望这有帮助 在Firefox 12和IE9中它对我很有效。我没有看到任何错误。我从来没有安装过ie9,现在这样做…@BrianTucker你错过了,只是让我自己的虚拟机对IE6、IE7和IE8有一种本地的感觉。。