尝试使用onbeforeUnload,它在每个用户操作上都被触发.为什么

本文关键字:操作上 用户 为什么 onbeforeUnload | 更新日期: 2023-09-27 18:17:13

我在这里有一个小代码片段,我希望这段代码只在用户试图通过按顶部的"X"关闭窗口时执行。问题是,无论用户采取什么操作,按下按钮或按下按钮提交,这段代码都会执行。我做错了什么?提前感谢您的帮助!

        <script type="text/javascript">
        window.onbeforeunload = function ()  {
            <% Close_btn(); %>
        }
         </script>     

尝试使用onbeforeUnload,它在每个用户操作上都被触发.为什么

这里有一个jquery的例子,因为我懒得把它变成纯js,但是你应该明白这个想法:

$('#login').on('click',function() { 
    window.onbeforeunload = function() {}; 
    return true; 
);

这样,当它们执行其他功能时,你首先取消设置卸载,因为你知道它会在卸载发生时触发,你只需要在卸载时取消设置,当你不希望这个动作发生时