Javascript setTimeout()和IE8。函数没有被调用

Javascript setTimeout()和IE8。函数没有被调用,javascript,jquery,internet-explorer-8,Javascript,Jquery,Internet Explorer 8,我在谷歌搜索过,即使如此,但我似乎在这里找不到解决方案。星期五的情况,或者我只是错过了一些东西 在IE8中,不调用此函数。我读到setTimeout()在某种程度上与IE8不兼容,但我似乎无法解决我的代码片段 救命啊,我错过了什么或做错了什么 onStartup: function () { loginForm = $('div#login-box'); setTimeout(function () { loginForm.show(); }, 1000

我在谷歌搜索过,即使如此,但我似乎在这里找不到解决方案。星期五的情况,或者我只是错过了一些东西

在IE8中,不调用此函数。我读到
setTimeout()
在某种程度上与IE8不兼容,但我似乎无法解决我的代码片段

救命啊,我错过了什么或做错了什么

onStartup: function () {
    loginForm = $('div#login-box');

    setTimeout(function () {
        loginForm.show();
    }, 1000);
},
编辑:发现问题,这段用于平板电脑网络应用程序的代码正在破坏我所有的js。新问题,我如何防止这个功能在IE8上运行-通过js

    // prevent default action when
    // moving finger on ipad/iphone
    document.addEventListener('touchmove', function (event) {
        event.preventDefault();
    }, false);

这并不是“崩溃”,JS-IE8遇到了一个错误,因为
文档
对象在IE8中没有
addEventListener
方法。您的
onStartup
功能正在执行吗?您在控制台中看到任何错误吗?您的代码是否到达启动时的
功能内部?是否存在
loginForm
loginForm.length
为1?我不认为setTimeout与IE8不兼容,我从未听说过
setTimeout
在IE8中有问题。启动时如何呼叫
?您在控制台中看到任何错误吗?我注意到的一件事是您正在执行
loginForm=
,而不是
var loginForm=
。可能
loginForm
正在其他地方更改?在哪里声明
loginForm
?使用
var
@RocketHazmat对
var
进行声明。我来测试一下@blender,让我在没有变量的情况下试试。
// prevent default action when
// moving finger on ipad/iphone
if(document.addEventListener) {
 document.addEventListener('touchmove', function (event) {
    event.preventDefault();
 }, false);
}