2017-01-25 14 views
1

私はまだSwiftを学んでいますので、私と一緒に裸にしてください。 :)UIWebViewにJavaScriptを入力してください

ローカルのJSファイルをUIWebViewに挿入しようとしています。私はサイトのデスクトップ版を読み込むように設定していますが、動作していないようです。私はSwift 3で何も見つけられず、一緒に作ろうとしましたが、レンガの壁に当たったようです。ここで

は、私がこれまで持っているものです:

import UIKit 

class ViewController: UIViewController, UIWebViewDelegate { 

@IBOutlet weak var webView: UIWebView! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    UserDefaults.standard.register(defaults: ["UserAgent": "custom value"]) 

    webView.loadRequest(URLRequest(url: URL(string: "https://www.myfitnesspal.com/account/login")!)) 

    func webViewDidFinishLoad(webView: UIWebView) { 

     let jsPath = Bundle.main.path(forResource: "mfpketo.user", ofType: "js") 

     webView.stringByEvaluatingJavaScript(from: jsPath!) 

     print("test") 
    } 

} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 
} 

は、任意およびすべてのヘルプをありがとう!

答えて

0

お近くにあります。あなたが誤ってJSパスを注入する代わりに、自身のjsさ

webView.stringByEvaluatingJavaScript(from: jsPath!) 

jspathから JSをロードするための重要な1行をスキップ。だから、JSファイルの内容をロードします。

var js = try? String(contentsOfFile: jsPath, encoding: String.Encoding.utf8) 

その後、ハンドオーバjsをいつものようにWebViewをします。

webView.stringByEvaluatingJavaScript(from: js!) 
関連する問題