📜  ios 独立网络应用程序 window.open (1)

📅  最后修改于: 2023-12-03 15:01:26.431000             🧑  作者: Mango

iOS独立网络应用程序的窗口打开方式

简介

在iOS独立网络应用程序中,当需要打开一个新的窗口时,需要使用JavaScript来调用native端的函数来实现。本文将介绍如何使用window.open函数进行窗口的打开。

实现步骤

以下为实现步骤:

  1. 定义一个function,名为openWindow,该function使用WKWebViewConfiguration来初始化一个WKWebView实例,并使用该实例打开新的窗口。
function openWindow(url) {
    var configuration = new window.webkit.WKWebViewConfiguration();
    var newWindow = new window.webkit.WKWebView(configuration);
    newWindow.loadRequest(new window.webkit.WKNavigationRequest({'url':url}));
}
  1. 在web页面中调用该function来打开新的窗口。例如,以下代码将在当前页面窗口的右侧打开一个新的窗口:
window.open(url, '_blank');
注意事项

以下为一些注意事项:

  1. iOS 9以上的系统才支持使用window.webkit.WKWebView来打开新的窗口。

  2. 在新的窗口中,无法访问原来的窗口中的JavaScript和CSS,需要重新加载。

  3. 在调用window.webkit.WKNavigationRequest时需要使用https协议。

参考链接

以下为一些参考链接:

  1. iOS开发之WebView与JavaScript交互

  2. SafariViewController vs WKWebView: Making the right choice

代码片段
function openWindow(url) {
    var configuration = new window.webkit.WKWebViewConfiguration();
    var newWindow = new window.webkit.WKWebView(configuration);
    newWindow.loadRequest(new window.webkit.WKNavigationRequest({'url':url}));
}

// 打开新窗口
window.open(url, '_blank');