"关闭" $(窗口).on('卸载前#39;)不需要时

时间:2015-08-20 22:34:53

标签: javascript php jquery

谁能告诉我为什么这不起作用?

我创建的调查一次只能提出一个问题。我想提醒用户,如果他们尝试离开(工作),但允许他们在最后一个问题(不工作)之后离开。

当然,如果有更优雅的方式来做到这一点,我可以接受以下建议。

以下是我所拥有的:

page1.php中

包含以下JS和div来保存使用.html()从页面Page2.php加载的问题。

function window_on(e) {

    if (e=='turnon') {
        alert(e); // THIS I RECEIVED
        $(window).on('beforeunload', function(){
        return 'Are you sure you want to navigate away from this page?';
        });
    } else {
        alert(e); // THIS I DO NOT RECEIVE
        $(window).off('beforeunload');
    }

}

Page2.php

我得到了#34; turnon"每次Page2.php在调查结束时加载EXCEPT时发出警报。我应该得到"岔路口"那么警惕,但​​不要。如果我试着离开页面,我仍会收到弹出窗口。

除了window_on('关闭')之外,一切都有效。

<?php
if ($next_q=='end') { // IF END ?>
   <script>
   window_on('turnoff'); // FOR TESTING 
   add_progress(<?php echo $progress; ?>) // WORKING
   </script>

<?php } else { ?>

   <script>
   add_progress(<?php echo $progress; ?>) // WORKING
   window_on('turnon'); // FOR TESTING 
   </script>

<?php } ?>

0 个答案:

没有答案