티스토리 뷰

import UIKit
import QRCodeReader
import AVFoundation
import WebKit
import SideMenu

class HomeViewController: UIViewController, WKNavigationDelegate, WKUIDelegate {
  
  @IBOutlet weak var webView: WKWebView!
  
  var popupWebView: WKWebView?
  
  @IBAction func didTapSideBarButton(_ sender: Any) {
  }

  func webView(_ webView: WKWebView, createWebViewWith configuration: WKWebViewConfiguration, for navigationAction: WKNavigationAction, windowFeatures: WKWindowFeatures) -> WKWebView? {
    popupWebView = WKWebView(frame: view.bounds, configuration: configuration)
    popupWebView?.autoresizingMask = [.flexibleWidth, .flexibleHeight]
    popupWebView?.navigationDelegate = self
    popupWebView?.uiDelegate = self
    view.addSubview(popupWebView!)
    return popupWebView!
  }
  
  func webViewDidClose(_ webView: WKWebView) {
    webView.removeFromSuperview()
    popupWebView = nil
  }
  
  override func viewDidLoad() {
    super.viewDidLoad()
    
    webView.uiDelegate = self
    webView.navigationDelegate = self

    webView.configuration.preferences.javaScriptCanOpenWindowsAutomatically = true
}

 

[출처]

https://blog.nextzy.me/ios-handling-popup-new-window-inside-web-view-c9c91b23ac2b

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함