WebKit Plug-Inの中からJavaScriptのfunctionを実行する方法
WebKit Plug-Inの中からJavaScriptのfunctionを実行するには、
WebScriptObjectクラスの下記のメソッドを使用する。
- (id)callWebScriptMethod:(NSString *)namewithArguments:(NSArray *)args
JavaScript側のfunction
<script LANGUAGE="JavaScript"> function test_func(){ alert('test_func') ; } </script>
プラグインのObjective-Cのソース
上記のようなJavaScriptのtest_funcを実行したい場合は、こんな感じ。
id pluginContainer = [[self pluginArguments] objectForKey:WebPlugInContainerKey]; if (pluginContainer) { WebView *myWebView = [[pluginContainer webFrame] webView]; [[myWebView windowScriptObject] callWebScriptMethod:@"test_func" withArguments:nil]; }
ADCからダウンロードできる、WebKitPluginWithJavaScriptが参考になります。
http://tuvix.apple.com/mac/library/samplecode/WebKitPluginWithJavaScript/index.html