2017-10-18 235 views
0

所以我试图在网站上的用户失去连接到互联网/无线网络时触发模式。如何确定某人何时与Safari 11失去互联网连接?

该解决方案适用于Chrome和Firefox - 但不与野生动物园工作11.0

window.addEventListener('offline', lostConnection); 

    function lostConnection() { 
    modals.lostConnection.open(); 
    } 

研究时,我使用navigator.onLine,也是图书馆“Offline.js” <尝试 - 这些没有为Safari浏览器工作,要么11.0

回答

0

MDN约navigator.onLine

在Chrome和Safari,如果浏览器无法连接到局域网(LAN)或Ar外面,它是离线的;所有其他条件返回true。因此,尽管您可以假设浏览器在返回错误值时处于脱机状态,但您不能认为真正的值必然意味着浏览器可以访问互联网。

此属性是不可信的,所以,在我看来,最好的解决方法是调用服务器端页面的ajax。如果浏览器处于脱机状态,则连接将失败,您可以相应地处理这两种情况。