我有一个使用Phonegap制作的应用程序。
对于某个功能,有时我需要将网页/网站加载到应用中 - 为此,我使用iframe。
iframe总是显示网页的桌面版本,即使我知道该页面具有响应式设计。
有没有办法强制iframe将网站加载为移动设备?
答案 0 :(得分:0)
您应该使用InAppBrowser插件打开外部网页。这将更加安全,因为外部页面将无法访问您的Cordova实例。 (如果我有第三方页面,并且您通过iFrame将我的页面加载到您的应用程序中,我可以轻松“破解”您的应用程序并窃取用户数据,运行任意Cordova命令等。)
此外,使用InAppBrowser时,您可以告诉浏览器打开当前Cordova WebView中的任何链接,以便外部网站只显示在您的应用中。我不知道您的外部网站是什么样的,但这可能就是您想要做的。您可以通过将目标设置为_self
来完成此操作,如下所示:
var ref = window.open('http://apache.org', '_blank', 'location=yes');