0

基本上有一个调用函数和一个计时器。计时器通过 Javascript 倒计时直观地显示,同时有一个 PHP 重定向,它已设置为与 Javascript 倒计时相同的长度。但是,window.location callto 函数正在阻止 PHP 标头重定向工作。谁能告诉我为什么?

Javascript window.location 函数(位于 body 之后,因为它阻止了它下面的代码被处理:

<?
echo"
<script type='text/javascript'>
    window.location='callto:".$to."';
</script>";
?>

PHP 标头重定向(在 html 标记上方):

<?php

header( "refresh:5;url=wherever.php" );

?>

如果我删除了 window.location 函数,重定向就会起作用。

4

3 回答 3

2

你应该只用javascript重定向,不要用php重定向。当您已经使用 javascript 进行 php 重定向时,为什么还要这样做?

为了延迟重定向,您应该使用 Javascript setTimetout() 函数,例如:

setTimeout(function () {document.location = 'detination';}, time_in_miliseconds);
于 2013-06-13T10:17:55.767 回答
2
 header( "refresh:5;url=wherever.php" );

这不是有效的重定向标头!

header('Location: http://example.com/sub/script.php');

这是一个有效的重定向标头!

要让脚本按您的意愿等待,您需要在其上添加一个 Sleep:

sleep(5);
header('Location: http://example.com/sub/script.php');
于 2013-06-13T10:23:17.180 回答
0

您应该使用简单的 html 和 href="callto:..." 呈现调用链接,而不是 javascript 重定向。如果您想在没有用户交互的情况下显示呼叫屏幕,您只需触发链接上的点击事件。

于 2013-06-13T10:30:10.597 回答