如何在cordova项目中异步打开inappbrowser

how to open inappbrowser asynchronously in cordova project

我正在 phonegap cordova 中创建一个 android 应用程序,我在这里使用 appbrowser pluggin.my 将网站转换为 webview pluggin.my 问题是在应用程序浏览器中加载时它在应用程序中显示白屏,有什么办法吗为了避免这个空白screen.i已经为应用程序设置了flash sreen,但它对inappbrowser没有影响。

我可以按照其中一种方法得到问题的解决方案

1)如果有任何方法可以将闪屏设置为inappbrowser

2) 如果我能够异步加载 inappbrowser,在加载期间我可以显示应用程序的闪屏

3)还有其他解决方案吗?

我使用了以下 javascript 代码

function onDeviceReady() {
    var url = 'http://www.mahadevaastro.com/bayarkart/';
    var target = '_blank';
    var options = "location=no,zoom=no"
    var option1 = "zoom=no"
    var ref = cordova.InAppBrowser.open(url, target, options);
   //   var ref = window.open(url, target, options, option1);

    ref.addEventListener('loadstart', loadstartCallback);
    ref.addEventListener('loadstop', loadstopCallback);
    ref.addEventListener('loadloaderror', loaderrorCallback);
    ref.addEventListener('exit', exitCallback);

    function loadstartCallback(event) {

        showSpinner();

    }

    function loadstopCallback(event) {
        hideSpinner();
    }

    function loaderrorCallback(error) {
        console.log('Loading error: ' + error.message)
    }

    function exitCallback() {
        console.log('Browser is closed...')
    }

    function showSpinner() {
        navigator.notification.activityStart("Bayar Speed Kart", "Its loading....");
        //  $.mobile.loading("show");
    }

    function hideSpinner() {
        navigator.notification.activityStop();
        //$.mobile.loading("hide");
    }

    // Handle the Cordova pause and resume events
    document.addEventListener( 'pause', onPause.bind( this ), false );
    document.addEventListener( 'resume', onResume.bind( this ), false );

    // TODO: Cordova has been loaded. Perform any initialization that requires Cordova here.
};

有一次我也遇到同样的问题,我的解决方法是在 loadstart 方法中加载 gif 图片

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

        ref.executeScript(
           // { code: "document.body.style.backgroundColor = 'yellow';" },
              { code: "document.body.style.background = 'url(loading.png)';" },
                // url("paper.gif");
           function (values) {
                //alert(values[0]);
            }
        );
    });