如何在 IOS 的 wkwebview 中隐藏 html 元素? [英] how to hide html elements in wkwebview in IOS?

查看:34
本文介绍了如何在 IOS 的 wkwebview 中隐藏 html 元素?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用 swift 4, xcode 9 在 wkwebview 中隐藏某些 html 元素.我知道如何在 android 中做到这一点,并添加了下面的代码.我只需要 swift 4 中 wkwebView 的等效代码.

i want to hide certain html elements in wkwebview using swift 4, xcode 9. i know how to do it in android and have added the code below. i just need an equivalent code for ios in swift 4 for wkwebView.

myWebView.setWebViewClient(new WebViewClient()
        {  
            @Override  
            public void onPageFinished(WebView view, String url)  
            {  
                myWebView.loadUrl("javascript:(function() { " +  
                        "document.getElementById('divHeader') 
[0].style.display='none'; " +  
                        "})()");  
            }  
        });  

        myWebView.loadUrl(URL);

推荐答案

使用 WKWebView

Use WKWebView

import WebKit

class FirstViewController: UIViewController, WKNavigationDelegate {

class FirstViewController: UIViewController, WKNavigationDelegate {

@IBOutlet weak var webVw: WKWebView!

override func viewDidLoad() {
    super.viewDidLoad()
    webVw.navigationDelegate = self
    loadmyPage(htmlstr: "https://www.mywebsite.com")
}

func loadmyPage(htmlstr:String){
    let url = URL (string: htmlstr)
    let request = URLRequest(url: url!)
    webVw.load(request)
}

//MARK:- WKNavigationDelegate
func webView(_ webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: Error) {
    print(error.localizedDescription)
}
func webView(_ webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation!) {
    print("Start to load")
}
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
    print("finish to load")
    let elementID = "right_sidebar"
    let removeElementIdScript = "var element = document.getElementById('\(elementID)'); element.parentElement.removeChild(element);"
    webView.evaluateJavaScript(removeElementIdScript) { (response, error) in
        debugPrint("Am here")
    }
}

这篇关于如何在 IOS 的 wkwebview 中隐藏 html 元素?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆