2012-04-10 5 views
0

JSからアプレットIDを呼び出すときにエラーObject doesn't support this property or methodが発生しました。今アプレットオブジェクトからの呼び出しIDがIEのjsエラーをスローします

コードを確認してください...

<!--[if !IE]> Firefox and others will use outer object --> 
    <object 
     classid  = "java:com.mypack.myclass.ABCClass.class" 
     type  = "application/x-java-applet" 
     height  = "200" 
     width  = "480" 
     id   = "myappletId"> 
     <!-- Konqueror browser needs the following param --> 
     <param name="cache_archive" value="a.jar, b.jar, c.jar" /> 
     <param name="codebase" value="applets/" /> 
     <param name="OnMouseLeftClickJS" value="showModal()"> 
     <!--<![endif]--> 
     <!-- MSIE (Microsoft Internet Explorer) will use inner object --> 
     <object 
      classid  = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" 
      codebase = "http://java.sun.com/update/1.5.0/jinstall-1_5_0-windows-i586.cab" 
      height  = "200" 
      width  = "480" 
      id   = "myappletId"> 
      <param name="code" value="com.mypack.myclass.ABCClass" /> 
      <param name="cache_archive" value="a.jar, b.jar, c.jar" /> 
      <param name="OnMouseLeftClickJS" value="showModal()"> 
      <param name="codebase" value="applets/" /> 
      <strong>No Java Support</strong> 
     </object> 
     <!--[if !IE]> close outer object --> 
    </object> 
<!--<![endif]--> 

、私のshowModal()jsの関数で私が持っている、

var myId = document.getElementById("myappletId"); //At this point I am getting the object data. 

に私はjqueryのモーダルである私のモーダルウィンドウでいくつかの操作を実行しますウィンドウと私はそこにボタンがあります。私がそれをクリックすると、関数xyz()を呼び出しています。

function xyz() { 
    var myId = document.getElementById("myappletId"); 
    //At this point myId is getting empty. 
} 

これはIEブラウザでのみ発生します。私はIE8でテストしました。 FirefoxとChromeでうまく動作します。

私は自分のページを移動していませんし、ビューのソースで私のオブジェクトタグを見ることができます。

私を助けてください。事前に

おかげで...あなたはdocument.getElementById('myappletId').getElementById('innerApplet')の使用に関する

<!-- MSIE (Microsoft Internet Explorer) will use inner object --> 

方法を持っているあなたのコメントで

+0

[アプレット情報]からリンクされているdeployJava.jsを試してみてください。ページ。](http://stackoverflow.com/tags/applet/info)Java Plug-Inのサプライヤによって提供され、サポートされているスクリプトです。また、内部/外部の合併症全体を側立つようにします。 –

答えて

0

あなたの努力のおかげでありがとう、間違いは私のコードです。モーダルウィンドウを開くと、オブジェクトタグの可視性が背面に隠されます。私はモーダルウィンドウを閉じた後でも可視にしていますが、このIEはそれを識別していません。奇妙だが真実...

0

? 内側のアプレットには一意のIDを使用することをお勧めします。

+0

実際には、myappletIdは内部アプレットのみを参照しています。つまり、IEまたはFirefoxのブラウザによっては、指定されたコメントに基づいて1つのIDだけが参照されます。上のコードを思い出させるために、私の最初の呼び出しは完全に機能しています。 – Max

関連する問題