2017-08-16 4 views
-2

私のアプリにWebViewを提示していますが、私が提示しているウェブサイトにいくつかの変更が加えられています。たとえば、google.comを読み込むと、「google検索」ボタンのテキストを変更することができます。これをどうやって行うのですか?UIWebView swiftからHTMLコードを編集する

同様の質問はObjective Cであり、動作していないようです。 ありがとうございます。

答えて

1

これはあなたに役立つと思います。 Swift3

@IBOutlet weak var webView: UIWebView! 
var firstLoad = true 
override func viewDidLoad() { 
    super.viewDidLoad() 
    self.webView.delegate = self 
    self.webView.loadRequest(URLRequest(url: URL(string: "https://www.google.com.pk/")!)) 
    // Do any additional setup after loading the view, typically from a nib. 
} 

func webViewDidFinishLoad(_ webView: UIWebView) { 
    let evaluate: String = "document.getElementById('main-title').value='\("New title")';" 
    webView.stringByEvaluatingJavaScript(from: evaluate) 

    //or 
    if firstLoad { 
     firstLoad = false 
     let html: String? = webView.stringByEvaluatingJavaScript(from: "document.documentElement.outerHTML") 
     //Edit html here, by parsing or similar. 
     webView.loadHTMLString(html!, baseURL: Bundle.main.resourceURL) 

     //print HTML for testing 
     print("HTML \(html!)") 
    } 

} 
+0

ではそれは迷惑得るが、 'UIWebView'の' stringByEvalutingJavascript() 'あなたが探しているコントロールを与えるを使用することができます。あなたは、あなたがターゲットとするコンテンツを変更するためにJavaScriptを書く必要があります。 –

関連する問題