我想添加一个facebook功能,当我的用户失去互联网连接时显示一条消息

use*_*032 6 javascript php mysql jquery facebook

可能重复:
JavaScript:如何检测Internet连接是否脱机?

在Facebook中,当您松开互联网连接时,您会看到一条消息"没有互联网连接.请重试?" 并且您从在线更改为离线.我希望在我的网站上.我怎样才能做到这一点?

Tim*_*ers 4

这应该可行,但我可能会以不同的方式处理它。它只是每 15 秒向服务器上的页面发送一个查询。如果查询失败,则它可能处于离线状态(您或服务器)。

function checkOnline(){
    $.ajax({
        url: "test.php",
    }).done(function( html ) {
        if(html=='ok')
            setTimeout('checkOnline()',15000);
        else
            alert('Error');
    }).fail(function(){
        alert('Offline');
    });
}
Run Code Online (Sandbox Code Playgroud)

测试.php

<?php exit('ok'); ?>
Run Code Online (Sandbox Code Playgroud)

我个人会将失败函数附加到我的其他 Ajax 或轮询查询中。如果这些失败,我将触发离线消息并停止进一步轮询或查询,直到页面重新加载或在一定时间间隔后。仅仅轮询服务器来了解到底有什么意义是没有意义的。