WKWebView.EvaluateJavaScriptAsync 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
EvaluateJavaScriptAsync(NSString) |
評估指定的 JavaScript 字串。 |
EvaluateJavaScriptAsync(String) |
評估指定的 JavaScript 字串。 |
EvaluateJavaScriptAsync(NSString)
評估指定的 JavaScript 字串。
public virtual System.Threading.Tasks.Task<Foundation.NSObject> EvaluateJavaScriptAsync (Foundation.NSString javascript);
abstract member EvaluateJavaScriptAsync : Foundation.NSString -> System.Threading.Tasks.Task<Foundation.NSObject>
override this.EvaluateJavaScriptAsync : Foundation.NSString -> System.Threading.Tasks.Task<Foundation.NSObject>
參數
- javascript
- NSString
要評估的 JavaScript 字串
傳回
表示非同步 EvaluateJavaScript 作業的工作。 TResult 參數的值是 WKJavascriptEvaluationResult 。
備註
如果未成功評估 JavaScript,這個方法將會擲 NSErrorException 回 。
var config = new WKWebViewConfiguration();
var wk = new WKWebView(UIScreen.MainScreen.Bounds, config);
var js = (NSString) "document.getElementById('foo').innerHTML = 'bar'";
var result = await wk.EvaluateJavaScriptAsync(js); //== "bar"
EvaluateJavaScriptAsync 方法適合與 C# 非同步搭配使用,方法是將控制項傳回給代表作業之 Task 的呼叫端。
系統會在評估之後呼叫 completionHandler
。 處理常式的引數包含 NSObject 評估的結果,如果 NSError 發生錯誤,則為 。 如果發生錯誤,自 result
變數會是 null
。 如果未發生錯誤,則 error
引數會是 null
。
var config = new WKWebViewConfiguration();
var wk = new WKWebView(UIScreen.MainScreen.Bounds, config);
var js = (NSString) "document.getElementById('foo').innerHTML = 'bar'";
WKJavascriptEvaluationResult handler = (NSObject result, NSError err) => {
if(err != null)
{
System.Console.WriteLine(err);
}
if(result != null)
{
System.Console.WriteLine(result);
}
};
wk.EvaluateJavaScript(js, handler);
適用於
EvaluateJavaScriptAsync(String)
評估指定的 JavaScript 字串。
public System.Threading.Tasks.Task<Foundation.NSObject> EvaluateJavaScriptAsync (string javascript);
member this.EvaluateJavaScriptAsync : string -> System.Threading.Tasks.Task<Foundation.NSObject>
參數
- javascript
- String
格式正確的 JavaScript 運算式。
傳回
表示非同步 EvaluateJavaScript 作業的工作。 TResult 會保存評估的結果。
備註
如果未成功評估 JavaScript,這個方法將會擲 NSErrorException 回 。
var config = new WKWebViewConfiguration();
var wk = new WKWebView(UIScreen.MainScreen.Bounds, config);
var js = (NSString) "document.getElementById('foo').innerHTML = 'bar'";
var result = await wk.EvaluateJavaScriptAsync(js); //== "bar"