在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)
        }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容