相关疑难解决方法(0)

检测浏览器或制表符关闭

是否有任何跨浏览器的JavaScript/jQuery代码来检测浏览器或浏览器选项卡是否正在关闭,而不是由于链接被点击?

javascript jquery

272
推荐指数
12
解决办法
45万
查看次数

检查页面是否在Javascript中重新加载或刷新

我想检查有人试图刷新页面的时间.

例如,当我打开页面时没有任何反应,但是当我刷新页面时会返回警报.

javascript page-refresh

158
推荐指数
7
解决办法
25万
查看次数

如何捕获浏览器窗口关闭事件?

我想捕获浏览器窗口/选项卡关闭事件.我用jQuery尝试了以下内容:

jQuery(window).bind(
    "beforeunload", 
    function() { 
        return confirm("Do you really want to close?") 
    }
)
Run Code Online (Sandbox Code Playgroud)

但它也适用于表单提交,这不是我想要的.我想要一个仅在用户关闭窗口时触发的事件.

javascript browser jquery events

142
推荐指数
5
解决办法
37万
查看次数

有没有办法在javascript中检测卸载事件是通过刷新,后退按钮还是关闭浏览器引起的?

我目前正在查看窗口的"卸载"事件,以尝试确定"卸载"事件是如何触发的,但是收效甚微.有没有办法确定如何触发javascript事件?

  • 页面刷新
  • 后退按钮(或离开页面)
  • 关闭浏览器

基本上我只需要在浏览器窗口关闭时执行一些代码,而不是刷新或导航.

目的:当客户更新我们的软件时,更新会将他们的第一个Internet请求重定向到商品页面.有一个"不要打扰"选项的按钮,但有些用户只需关闭他们的浏览器.关闭浏览器后,我需要复制"请勿打扰"功能,以便用户不再被重定向到优惠页面.由于离开页面的方式不同,简单地附加到"卸载"事件将不起作用.

javascript events

30
推荐指数
1
解决办法
4万
查看次数

检测用户是否正在关闭IE浏览器而不是onunload事件,因为它在用户刷新等时触发

在过去5天通过网络上的众多论坛后,我仍然无法完全追踪浏览器关闭事件.我的要求是在用户尝试关闭浏览器时生成弹出消息.

我在body'onbeforeunload'事件上调用了我的javascript函数.我已经硬编码条件来检查浏览器,刷新,文件关闭或Alt-F4的红色'X'按钮的鼠标坐标.

当浏览器窗口最大化时,我的代码工作正常,但如果我们在限制后缩小它,则会失败.请帮助我,如果有些人已经找到了类似问题的解决方案.

谢谢.

OP的汇总响应


好的,告诉我是否可以检测用户是否点击了浏览器的"刷新"按钮.此外,可以通过右键单击 - 刷新或Ctrl-R来触发刷新.我的要求是在Refresh上使变量为false.我只能在F5上做到这一点,但所有其他方式仍然无法实现.这同样适用于Back Buton.


嗨ppl,感谢所有回复至少的人.我已经与我的老年人谈过这个问题,他们现在已经了解并且已经对浏览器菜单按钮做出了妥协.所以现在我的任务变得简单了.现在,我正在使用一个变量并默认情况下将其设置为true.正如我之前提到的,我只需捕获onbeforeunload并在用户试图离开时弹出一条消息.当用户导航到其他页面时,该消息不会弹出,因为我使用以下代码在我的页面的所有链接上将变量设为false:

document.onclick = function() {
    //To check if user is navigating from the page by clicking on a hyperlink.
    if (event.srcElement.tagName == 'A')
        blnShowMsg = false; //To not popup the warning message
    else
        blnShowMsg = true; //To popup the warning message
}
Run Code Online (Sandbox Code Playgroud)

在我的情况下,当用户执行刷新,返回或转到收藏夹中的任何链接等时,仍会显示该消息.


谢谢伙计,但我已经经历过那个并没有找到太多帮助.我的老年人对这个解决方案不满意,因为在我的应用程序的evry链接上放置一个标记是一项复杂的工作,他们害怕破坏应用程序.任何其他建议将不胜感激.再次感谢.


难道没有人能想到这里的解决方案!所有专家在哪里?

javascript

10
推荐指数
1
解决办法
4万
查看次数

如何区分由Refresh或Window Close触发的卸载事件?

可以通过"刷新"操作和"窗口关闭"操作触发卸载事件.有没有办法区分实际触发它的动作?在我的情况下,我想忽略Refresh动作.能否请您深入了解一下工作原理是什么?

我注意到已经有这样的问题了,但似乎它们都没有得到解决.因此我再次提出这个问题,希望有些聪明人可以解决这个问题.

javascript events refresh

6
推荐指数
1
解决办法
2274
查看次数

我需要杀死会话并在浏览器关闭或制表符关闭后执行一个功能

我想在浏览器关闭或标签关闭后终止会话.我需要在会话到期后使用Session Listener.But进行一次数据库连接,为此我需要等到会话销毁.

这是会话销毁时执行的代码.

public void sessionDestroyed(HttpSessionEvent event) {
        synchronized (this) {
            //System.out.println("deletion");
            ServletContext application = event.getSession().getServletContext();
            sessionCount = (Integer) application.getAttribute("SESSION_COUNT");
            application.setAttribute("SESSION_COUNT", sessionCount=sessionCount - 1);
            //application.setAttribute("SESSION_COUNT", --sessionCount);


            try
            {
                Class.forName("com.mysql.jdbc.Driver");
            }
            catch (ClassNotFoundException e) {
                System.out.println("" + e);
            }

            Connection connection = null;
            try {
                connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/raptor1_5", "root", "");
                Statement st = connection.createStatement();

                st.executeUpdate("update adminlogin set Password='admin' where Username='admin'");  

            }   catch (SQLException e) {
                e.printStackTrace();
            }

        }
        System.out.println("Session Destroyed: " + event.getSession().getId());
        System.out.println("Total Sessions after delete: " + sessionCount);
    } …
Run Code Online (Sandbox Code Playgroud)

javascript java session

6
推荐指数
1
解决办法
6312
查看次数

如何使用angularjs区分浏览器关闭和刷新?

我有存储员工 ID 的本地存储。当我刷新浏览器时,根据员工 ID 获取本地存储值,如员工 ID 获取一些数据。当我关闭浏览器时,我想使用 angularjs 或 javascript 清除本地存储中的员工 ID。我尝试了以下代码。

window.onunload = close;
    function close() {
        //// do something...
        localStorage.clear();
        return null;
    }
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,当我刷新浏览器时,window.onunload 也会触发并清除本地存储值,但我只想在浏览器关闭时清除本地存储。

javascript angularjs

1
推荐指数
1
解决办法
4937
查看次数