2011-07-03 3 views
0

私はWebViewでいくつかのCocoaアプリケーションを開発しました。今私はJavaScriptファイルを使用してjavacriptを評価することができますevaluateWebScript:javascriptからWebView経由でCocoaアプリケーションにalert()アクションを受け取る方法

しかし、ココアのNSAlertSheetで表示するには、javacriptからalert()イベントを受け取る必要があります。

カカオの開発方法は?

答えて

8

あなたは(setUIDelegate:メソッドを使用して)WebViewWebUIDelegateとしてオブジェクトを設定し、そのオブジェクトに‑webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:デリゲートメソッドを実装する必要があります。このメソッドは、WebViewにロードされたページがalert() JavaScript関数を呼び出すときに呼び出されます。

デリゲートメソッドの実装では、アラートを表示する必要があります。警戒すべき:

  1. 表示
  2. はメッセージではJavaScript
  3. から来ているが、一つだけのボタン、OKボタン
が含まれていることを示しているメソッドに渡される正確なメッセージ文字列

これは基本的な例です:

+0

ありがとう、それは作品です:) – meddlesome

0

override JavaScript alertの機能windowでお試しください。カスタムalertでは、事前定義済みのURLにリダイレクトすることができます。 app://alert/something%32is%32wrong。そのようなリダイレクトはUIWebViewwebView:shouldLoadRequest:で処理できます。

PS:私はそれをしようとしなかった:)

+1

この質問はタグ「ココア」m iOSでないMac OS Xだと言っている。 –

関連する問題