アプレットからJavaScriptの関数を呼び出す
例えばアプレットで何かの処理をしていて、それが終わったタイミングで
- JavaScriptのalertを呼んだり
- ページを移動したり
- その他もろもろ
といったような、何かしらのJavaScriptを動かしたいことがある。そんなときのやり方。
JSObject window = JSObject.getWindow(Applet.this); window.eval("hoge()");
これで、アプレットが埋め込まれているhtml側に定義されてるJavaScriptのhoge関数が呼ばれる。いわゆるコールバック。
このhoge関数は、例えばこんな感じ。
function hoge(){ alert('完了しました'); }
上記のようにすればalertされる。ページを移動したいなら、
function hoge(){ location.href = 'http://example.com/complete.html'; }
こんな感じ。まあ普通のJavaScript。これをhtml側に用意しておけば良い。