Javascript 重定向脚本
目前,我正在将用户在x秒后重定向到另一个页面,但我想做的是,在y秒后重定向用户,计时器将仅在用户单击我页面上的链接后启动,当前计时器仅在用户访问我的页面后启动 这是我在谷歌搜索中找到的代码-Javascript 重定向脚本,javascript,jquery,redirect,Javascript,Jquery,Redirect,目前,我正在将用户在x秒后重定向到另一个页面,但我想做的是,在y秒后重定向用户,计时器将仅在用户单击我页面上的链接后启动,当前计时器仅在用户访问我的页面后启动 这是我在谷歌搜索中找到的代码- 函数js_wait() { setTimeout(js_go(),3000);//3000毫秒=3秒 } 函数js_go() { window.location=“mynexpage.php”; } 正文显示了一个链接 单击后,它调用javascript函数“js_wait” js_wait启动一个
函数js_wait()
{
setTimeout(js_go(),3000);//3000毫秒=3秒
}
函数js_go()
{
window.location=“mynexpage.php”;
}
- 正文显示了一个链接
- 单击后,它调用javascript函数“js_wait”
- js_wait启动一个计时器x秒,然后调用js_go
- js_go重定向到该页面
我可以让它在单击时重定向,但它在单击链接后立即重定向,但我希望它在重定向之前等待y秒。从setTimeout函数参数中删除
()
setTimeout (js_go, 3000); // 3000 ms = 3 secs
如果有,则表示传递函数调用的结果,而不是函数引用
作为背景信息,setTimeout可以以两种不同的方式使用:要么传递一个函数引用(如您所做的),要么传递一个字符串,该字符串将由setTimeout触发的时间进行计算。这意味着,如果要将一些参数传递给setTimeout,可以将它们作为字符串传递(比如
setTimeout('js_go('http://google.fi)或将它们包装到函数中,这是首选方式(setTimeout(function(){js_go(“http://google.fi”),3000)
)
但是,由于您不在此处使用参数,您应该只传递函数引用,如上面的代码块所示。从setTimeout函数参数中删除()
setTimeout (js_go, 3000); // 3000 ms = 3 secs
如果有,则表示传递函数调用的结果,而不是函数引用
作为背景信息,setTimeout可以以两种不同的方式使用:要么传递一个函数引用(如您所做的),要么传递一个字符串,该字符串将由setTimeout触发的时间进行计算。这意味着,如果要将一些参数传递给setTimeout,可以将它们作为字符串传递(比如setTimeout('js_go('http://google.fi)或将它们包装到函数中,这是首选方式(setTimeout(function(){js_go(“http://google.fi”),3000)
)
但是,由于您不在此处使用参数,您应该只传递函数引用,如上面的代码块所示。请尝试更简单的方法:工作演示
对于重定向,这是键:window.parent.location
其余我希望它能满足您的需要:)
代码
function js_wait() {
setTimeout(function() {
window.parent.location = "http://www.google.com";
}, 3000);
}
样品
i、 e.在您的具体情况下:
window.setTimeout(function() {
window.location = 'mynexpage.php';
}, 3000);
请尝试更简单的方法:工作演示
对于重定向,这是键:window.parent.location
其余我希望它能满足您的需要:)
代码
function js_wait() {
setTimeout(function() {
window.parent.location = "http://www.google.com";
}, 3000);
}
样品
i、 e.在您的具体情况下:
window.setTimeout(function() {
window.location = 'mynexpage.php';
}, 3000);
不要激活该方法,只需按如下方式传递函数签名:
<head>
<script>
function js_wait()
{
setTimeout (js_go, 3000); // 3000 ms = 3 secs
}
function js_go()
{
window.location = "mynexpage.php";
}
</script>
</head>
<body>
<a href="" onclick="js_wait(); return false;">My link</a>
</body>
函数js_wait()
{
setTimeout(js_go,3000);//3000毫秒=3秒
}
函数js_go()
{
window.location=“mynexpage.php”;
}
不要激活该方法,只需按如下方式传递函数签名:
<head>
<script>
function js_wait()
{
setTimeout (js_go, 3000); // 3000 ms = 3 secs
}
function js_go()
{
window.location = "mynexpage.php";
}
</script>
</head>
<body>
<a href="" onclick="js_wait(); return false;">My link</a>
</body>
函数js_wait()
{
setTimeout(js_go,3000);//3000毫秒=3秒
}
函数js_go()
{
window.location=“mynexpage.php”;
}
简单地写为:
function js_wait_redirect() {
setTimeout(
function(){
window.location = "mynexpage.php";
}
, 3000); // 3000 ms = 3 secs
}
简单地写为:
function js_wait_redirect() {
setTimeout(
function(){
window.location = "mynexpage.php";
}
, 3000); // 3000 ms = 3 secs
}
好的,谢谢,它工作得很好,但还有一个帮助。应在新窗口中打开..但其在同一窗口中打开。请提供更多帮助。您需要创建一个窗口。你可以在这里看到如何做:好的……谢谢,它工作得很好……但还有一个帮助。应在新窗口中打开..但其在同一窗口中打开。请提供更多帮助。您需要创建一个窗口。您可以在此处看到如何执行此操作: