Phonegap build - Open external page in InAppBrowser or childbrowser with no toolbar and close it?

后端 未结 2 779
执念已碎
执念已碎 2020-12-03 02:17
  1. I want to open an external page in the InAppBrowser or childbrowser, where I don\'t show any toolbar and where I can have a button in my externalpage that closes th

相关标签:
2条回答
  • 2020-12-03 02:41

    Here's a simpler solution that may help someone.

    // open win and turn off location 
    var ref = window.open('http://myloginapp.com', '_blank', 'location=no');
    
    // attach listener to loadstart
    ref.addEventListener('loadstart', function(event) { 
        var urlSuccessPage = "http://myloginapp/success/";
        if (event.url == urlSuccessPage) {
        ref.close();    
        }
    });
    
    0 讨论(0)
  • 2020-12-03 02:46

    OK, problem 1 to close is solved. This is what I use to open an external page in the InAppBrowser. From the page that I load in the InAppBrowser, I can close the InAppBrowser itself, returning to my app from where I opened the browser.

    Create a page on your server - closeInAppBrowser.html that is just an empty html page, it doesn´t do anything

    I open the browser with this:

    <a href="#" onclick="openInAppBrowserBlank('http://www.mypage.asp?userId=1');">open InAppBrowser</a>
    
    var ref = null;
    function openInAppBrowserBlank(url)
    {
        try {
    ref = window.open(encodeURI(url),'_blank','location=no'); //encode is needed if you want to send a variable with your link if not you can use ref = window.open(url,'_blank','location=no');
             ref.addEventListener('loadstop', LoadStop);
             ref.addEventListener('exit', Close);
        }
        catch (err)    
        {
            alert(err);
        }
    }
    function LoadStop(event) {
             if(event.url == "http://www.mypage.com/closeInAppBrowser.html"){
                // alert("fun load stop runs");
                 ref.close();
             }    
        }
    function Close(event) {
             ref.removeEventListener('loadstop', LoadStop);
             ref.removeEventListener('exit', Close);
        } 
    

    And to close the InAppBrowser from the page that I opened in the browser(http://www.mypage.asp) I have a button-link like this.

    <a href="http://www.mypage.com/closeInAppBrowser.html"></a>
    

    I hope it helps somebody else!

    0 讨论(0)
提交回复
热议问题