WebView

三种加载方式

webView.loadRequest()
webView.loadHTMLString()
webView.loadData()

第一种 加载网络链接

        let url = NSURL(string: "http://ifeng.com")
        let request = NSURLRequest(URL: url!)
        webView.loadRequest(request)

第二种 加载HTML

        let htmlStr = "

这是一个标题

" webView.loadHTMLString(htmlStr, baseURL: nil)

第三种加载本地网页

//1.
 let url = NSBundle.mainBundle().URLForResource("index", withExtension: "html")
        let request = NSURLRequest(URL: url!)
        webView.loadRequest(request)
//2.
let data = NSData(contentsOfURL: url!)
        webView.loadData(data!, MIMEType: "text/html", textEncodingName: "utf-8", baseURL: NSURL())
        self.view.addSubview(webView)

加载的时机

 //1. 开始加载的时机
    //2. 可以过滤网址
    func webView(webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool {
        let path = request.URL?.absoluteString
        print(path!)
        if path!.containsString("baidu.com") {
            return false
        }
        return true
    }
    
    func webViewDidStartLoad(webView: UIWebView) {
        //
    }
    
    func webViewDidFinishLoad(webView: UIWebView) {
        //如果需要操作网页,必须等加载完成
        let res = webView.stringByEvaluatingJavaScriptFromString("document.getElementsByTagName('img')")
        print(res)
        
        //w3school.com.cn
    }
    
    func webView(webView: UIWebView, didFailLoadWithError error: NSError?) {
        
    }

你可能感兴趣的:(WebView)