在webView中重寫JS,設置

import UIKit

class ViewController: UIViewController, UIWebViewDelegate {
    
    @IBOutlet weak var webView: UIWebView!
    override func viewDidLoad() {
        super.viewDidLoad()
        
        let url = URL(string: "http://www.xianhua.com.cn/m/")
        let request = URLRequest(url: url!)
        webView.loadRequest(request)
    }
    // MARK:設置了userAgent 默認是很全的 其實沒必要,也可以把這個設置在
    func webViewDidStartLoad(_ webView: UIWebView) {
        guard let userAgent = webView.stringByEvaluatingJavaScript(from: "navigator.userAgent") else {
            print("沒有值")
            return
        }
        let userAgentAndSetting = "\(userAgent) + ios"
        UserDefaults.standard.register(defaults: ["UserAgent" : userAgentAndSetting])
        UserDefaults.standard.synchronize()
        
    }
    /// 在這里可以再添加完頁面的JS語句之后,在添加自己寫的其他js語句,來修改頁面
        func webViewDidFinishLoad(_ webView: UIWebView) {
            // 要執行的js語句
            let jsString = "document.getElementById('header').getElementsByTagName('h1')[0].innerText = '大神17鮮花網';document.getElementsByClassName('detail_btns2')[0].remove();document.getElementById('footer').innerText = '大神17鮮花網';"
            // 執行js語句的方法
            webView.stringByEvaluatingJavaScript(from: jsString)
        }
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容