How to close InAppBrowser itself in Phonegap Application?
日前在做一个cordova/phonegap项目,用到的使用cordova 自带的内置浏览器打开一个多平台的页面。由于这个页面有一个返回按钮,实现点击返回关闭这个内置浏览器;
思路:在app中利用打开的内置浏览器ref.colse()方法关闭自身;
触发条件:添加监听事件,监测内置浏览器的地址的变化和预期关闭的地址是否相符。
参考stackoverflow的网友回答后自己补充了下,做了下兼容:
在第三方页面布置(in the third page html and js):
closeBrowser(){ if(history.length==1){ window.open('mobile/close'); }else{ history.back(); } } <a href="javascript:;" onclick="closeBrowser()">Close</a>
在我自己的app代码中in my client side javascript (the Phonegap app):
var ref = window.open(encodeURI(url), '_blank','location=no'); ref.addEventListener('loadstart', function(event) { if (event.url.match("mobile/close")) { ref.close(); } });