Php onbeforeunload仅在onload未完成时触发弹出窗口

Php onbeforeunload仅在onload未完成时触发弹出窗口,php,javascript,onload,onbeforeunload,Php,Javascript,Onload,Onbeforeunload,我正试图找出用户是否在页面加载完成之前离开,但在页面加载完成后,我遇到了一些问题,因为我不知道如何禁用它。 这是搜索加载页面的一部分,因此当页面加载完成时,用户将重定向到结果页面,但使用此脚本,用户将被询问在搜索完成后是否要离开页面。 该代码如下所示,适用于页面加载未完成时以及页面加载完成时。 关于如何仅在pageload完成之前触发此事件,或者是否有其他方法来完成此操作 多谢各位 <?php $var = <<<EOF <!DOCTYPE html PUBLI

我正试图找出用户是否在页面加载完成之前离开,但在页面加载完成后,我遇到了一些问题,因为我不知道如何禁用它。 这是搜索加载页面的一部分,因此当页面加载完成时,用户将重定向到结果页面,但使用此脚本,用户将被询问在搜索完成后是否要离开页面。 该代码如下所示,适用于页面加载未完成时以及页面加载完成时。 关于如何仅在pageload完成之前触发此事件,或者是否有其他方法来完成此操作

多谢各位

<?php

$var = <<<EOF

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Title</title>
    <script language="JavaScript">
      window.onbeforeunload = confirmExit;
      function confirmExit()
      {
        return "message?";
      }
    </script>
</head>
<body>
asdf
</body>
</html>

EOF;

    print $var;
    flush();
    ob_flush();    
$i = 0;
while($i < 10){
    print $i.'<br />';
    flush();
    ob_flush();    
    sleep(1);
    $i++;
}

?>

确保这是文档中的第一个函数,以便首先绑定它

window.onload = function(){
  // Called once the page is fully loaded to make onbeforeunload a no-op 
  window.onbeforeunload = null;
}