Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/132.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果没有internet连接,请隐藏iframe_Javascript_Jquery_Iframe - Fatal编程技术网

Javascript 如果没有internet连接,请隐藏iframe

Javascript 如果没有internet连接,请隐藏iframe,javascript,jquery,iframe,Javascript,Jquery,Iframe,iframe: 如果没有internet连接,我无法隐藏iframe。我不知道这里怎么了。 谢谢。navigator.onLine告诉您浏览器是否处于“脱机”模式 它并没有像你可能想的那样检查你是否能上网 (要做到这一点,你可以尝试用ajax ping Google.com,或者做一些类似的技巧)navigator.onLine告诉你浏览器是否处于“脱机”模式 它并没有像你可能想的那样检查你是否能上网 (要做到这一点,你可以尝试用ajax ping Google.com,或者做一些类似的技巧)你

iframe:

如果没有internet连接,我无法隐藏iframe。我不知道这里怎么了。
谢谢。

navigator.onLine
告诉您浏览器是否处于“脱机”模式

它并没有像你可能想的那样检查你是否能上网


(要做到这一点,你可以尝试用ajax ping Google.com,或者做一些类似的技巧)

navigator.onLine
告诉你浏览器是否处于“脱机”模式

它并没有像你可能想的那样检查你是否能上网


(要做到这一点,你可以尝试用ajax ping Google.com,或者做一些类似的技巧)

你可以用
类型:'jsonp'
超时:3000
(也就是三秒钟)向你想通过框架包含的同一页面发出ajax请求

$( document ).ready(function() {
    window.setInterval(function(){
        if (navigator.onLine) {
            //$("#iframe").show();
            $("#iframe").attr("src", "http://weather.gc.ca/wxlink/wxlink.html?cityCode=on-143&lang=e");
        }
        else{
            $("#iframe").hide();
        }
    }, 5000);
});
但是,您总是会遇到语法错误,因为该页面的内容不是脚本。但浏览器通常能够在出现此类错误后恢复。
UPD。只需使用您的url进行尝试,它就可以工作。

您可以使用
类型:'jsonp'
超时:3000
(即三秒)对要通过框架包含的同一页面执行ajax请求

$( document ).ready(function() {
    window.setInterval(function(){
        if (navigator.onLine) {
            //$("#iframe").show();
            $("#iframe").attr("src", "http://weather.gc.ca/wxlink/wxlink.html?cityCode=on-143&lang=e");
        }
        else{
            $("#iframe").hide();
        }
    }, 5000);
});
但是,您总是会遇到语法错误,因为该页面的内容不是脚本。但浏览器通常能够在出现此类错误后恢复。
UPD。只要用你的url试试就行了。

一种判断你是否在线的方法的可能重复:它对我有效。。一种判断你是否在线的方法的可能重复:它对我有用。。有没有办法在客户端进行检查。如果没有internet连接,我不想在iframe中显示错误消息。@user3018980是的,请执行您当前正在执行的操作,但是请记住,navigator.onLine的值只有在请求远程页面或导航到新页面后才会更新。“在Chrome和Safari中,如果浏览器无法连接到局域网(LAN)或路由器处于脱机状态;所有其他条件返回真值。在Firefox和Internet Explorer中,将浏览器切换到脱机模式会发送假值;所有其他条件返回真值。”是否有任何方法可以在客户端进行检查。如果没有internet连接,我不想在iframe中显示错误消息。@user3018980是的,执行您当前正在执行的操作,但是请记住,navigator.onLine的值只有在请求远程页面或导航到新页面后才会更新。在Chrome和Safari中,如果浏览器无法连接到局域网(LAN)或路由器,则浏览器处于脱机状态;所有其他条件都返回true。在Firefox和Internet Explorer中,将浏览器切换到脱机模式会发送假值;所有其他条件都返回true值
$.ajax({
    type : "GET",
    url : "http://weather.gc.ca/wxlink/wxlink.html?cityCode=on-143&lang=e",
    timeout : 3000,
    dataType : "jsonp",
    crossDomain : true,
    success : function (response, textS, xhr) {
        // never get here
    },
    error : function (xmlHttpRequest, textStatus, errorThrown) {
       if (textStatus === 'timeout') {
          // not reachable
       } else {
          // reachable
       }
    }
});