如何在20秒内在InAppbrowser中加载URL?

时间:2017-08-14 06:14:19

标签: javascript ios cordova inappbrowser

我在一个cordova项目工作,我对cordova很新。

因为我有一个要求就像我在InAppbrowser中调用一个url。如果网络连接速度非常慢(即20Kbps / 50Kbps),我必须显示“网络慢”的警报。我在这里使用setTimeout功能,我也在检查互联网连接。但我的问题是,如果有互联网连接,那么setTimeout函数也会在20秒后调用。

我想检查互联网连接速度是否缓慢,或者我的InAppbrowser加载url my setTimeout功能后不应该调用。 anypne请帮忙解决这个问题。我的代码是这样的......

  if(cid == null){
              curl = “some url”;

            //ref = cordova.InAppBrowser.open(curl, '_blank', 'location=no,hardwareback=yes');
                      ref = cordova.InAppBrowser.open(curl, '_blank', 'location=no,hardwareback=yes');
 setTimeout(function(){
    //alert("Hello");

  if( startEndedVar == true)
    {
  ref = cordova.InAppBrowser.open(curl, '_blank', 'location=no,hardwareback=yes');
       }
    else{
        ref = cordova.InAppBrowser.open("settings.html", '_blank', 'location=no,hardwareback=yes');

          }
  }, 3000);

  ref.addEventListener('loadstart', function() {

                                           //alert('laoding started');

                                           });

      ref.addEventListener('loadstop', function() {

      startEndedVar = true;
      //alert('laoding ended');
  });
  ref.addEventListener('exit', function(event){
              screen.orientation.lock('portrait').then(function(obj) {
                console.log(obj);
            }, function(obj) {
                console.log(obj);
            });
            });

          }

提前致谢

1 个答案:

答案 0 :(得分:0)

这是因为您有两次相同的订单:var selects = document.querySelectorAll("select[name='combosSupG']"); selects.forEach(function(s){ s.disabled = true; }); 。感谢ref = cordova.InAppBrowser.open(curl, '_blank', 'location=no,hardwareback=yes');if你打算在每种模式下打开一个窗口,你的TimeOut也被称为aufer 30s而不是20s之后。

我不确定逻辑中是否存在更深层次的问题。