すべてのフレームが同じWebサーバーからロードされるマルチフレームWebアプリケーションの1つのフレームにアプレットがある場合、そのアプレットは他のフレームでJavaScriptメソッドをどのように呼び出すことができますか?私はこのようなことを試みました:
jsobject.call("parent.otherFrame.methodToCall", new String[] {"argument"});
関数が存在しないという苦情があります。ただし、次のように呼び出すと、次のようになります。
jsobject.eval("parent.otherFrame.methodToCall('argument')");
その後、それは動作します。の使用を避けようとしていますeval
。call
Appletとは異なるフレームでコードを呼び出すと、ブラウザとJVMの組み合わせごとに動作が異なる可能性がありますか?eval
部分的にアプレット側ではなく、JavaScriptエンジンで評価されるので安全ですか?