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