2012-11-29 32 views
0

我在asp.net母版页的标题中放置了以下脚本。母版页标题中的Javascript

在特定的非活动时间结束后,该脚本应该如何重新指向Timeout.aspx页面。
如果用户在页面上滚动/点击,则重置时间。在运行页面,我得到一个错误:

Jscript engine runtime error: object expected. 

代码:

var wintimeout; 

function SetWinTimeout() { 
    wintimeout = window.setTimeout("window.location.href='../Timeout.aspx';", 
            60000); //after 5 mins i.e. 5 * 60 * 1000 
} 

$('body').click(function() { 
    window.clearTimeout(wintimeout); 
    //when user clicks remove timeout and reset it 
    SetWinTimeout(); 
}); 

window.onload = SetWinTimeout; 
+1

您有加入了jQuery脚本你的主页? jquery脚本包含必须*位于你的脚本之上 – mortb

+0

我已经将它添加到页面的头部 –

回答

2

您需要更改的setTimeout

的通话

变化

function SetWinTimeout() { 
    wintimeout = window.setTimeout("window.location.href='../Timeout.aspx';", 
            60000); //after 5 mins i.e. 5 * 60 * 1000 
} 

function SetWinTimeout() { 
    wintimeout = window.setTimeout(function(){ 
         window.location.href='../Timeout.aspx'; 
       }, 60000); 
} 
+0

仍然是同样的错误,它指向$('body')。click(function(){window .clearTimeout(wintimeout); //当用户单击时删除超时并重置它SetWinTimeout();}); –

+0

在[setTimeout](https://developer.mozilla.org/en-US/docs/DOM/window.setTimeout)中,您也可以使用字符串而不是函数编写代码 –

+0

仅放置一个语句alert(“hello”)在SetWinTimeout()中并检查是否得到它? – Adil

0

如果这不是因为没有加载JQuery的错误,请尝试以下页面后全程运行脚本(和JQuery为此事)已加载:

$(function() 
{ 

    $('body').click(function() { 
     window.clearTimeout(wintimeout); 
     //when user clicks remove timeout and reset it 
     SetWinTimeout(); 
    }); 

    SetWinTimeout(); 
});