0

ページの読み込みが完了する前にユーザーが離れたかどうかを調べようとしていますが、ページの読み込みが完了した後、無効にする方法がわからないため、少し問題があります。これは検索読み込みページの一部であるため、ページの読み込みが完了するとユーザーは結果ページにリダイレクトされますが、このスクリプトを使用すると、ユーザーは検索が終了した後にページを離れたいかどうかを尋ねられます。コードは次のとおりで、ページロードが完了していないときと完了したときの両方で機能します。ページロードが完了する前にのみこのイベントをトリガーする方法についてのアイデアはありますか、またはこれを達成する他の方法はありますか?

ありがとうございました。

<?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++;
}

?>
4

1 に答える 1

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

最初にバインドされるように、これがドキュメントの最初の関数であることを確認してください。

于 2012-06-05T02:24:33.080 に答える