4

OpenLaszlo でコンパイルされた Flash アプリであるオープンソースの OpenMeetings を使用して会議ポータルを作成しています。そのため、Laszlo マークアップと JavaScript を組み合わせた SWF ソース コードにはアクセスできますが、ActionScript にはアクセスできません。

私が抱えている問題は、ユーザーが Internet Explorer のアプリから離れたときに、マイクが接続されたままになり、相手の声が聞こえる/相手の声が聞こえることです。これは、IE が Flash オブジェクトを適切に破棄していないことを意味します。

このバグを自分のシステムで再現するのに問題がありましたが、同僚のコンピュータでは発生しています。

JavaScript を使用して unload イベントをキャプチャし、innerHTML を "" に設定して、ページから Flash オブジェクトを削除しようとしましたが、やはりマイクなどは接続されたままです。

これは、Internet Explorer でのみ発生します。これは私たちのソフトウェアにとって重大なバグです。私たちは教育を扱っているため、学生が知らずに「オンライン」のままでいると、訴訟に発展する可能性があります。

4

5 に答える 5

2

ここで説明されているオプションは、私たちにとって最もうまくいくようです:
http://blog.vokle.com/index.php/2009/03/10/why-ie-doesnt-drop-flash-netconnections-netstreams-and-how-to -fix-it/
次のように、SWFObject から "removeSWF" 関数も使用します。

    <!--[if IE]>
    <script type="text/javascript">
        function cleanupForIE() {
            try {
                //get using the id of your swf instance
                var swf = document.getElementById('myswf');  
                swf.disconnect();
            } catch(e) {
                alert("Error on unload: " + e);
            }
            swfobject.removeSWF("flashContent");
        }
        window.attachEvent("onbeforeunload", cleanupForIE);
    </script>
    <![endif]-->  
于 2011-04-29T17:45:09.983 に答える
1

残念ながら、内部サイトであるため、リンクを提供することはできません。

これは、divにsrc = "..."を埋め込むだけで、アンロード時にdivのinnerHTMLを""に設定します。これは、ブラウザウィンドウを閉じるだけではうまくいきません。また、埋め込みオブジェクトへの直接の参照はなく、含まれているdivへの参照もありません。映画がまだ「再生中」であることに関係があるのではないかと思います。Googleの一部の検索結果には、同様の問題(ブラウザウィンドウを閉じた後もFLVオーディオが聞こえる)について不満を言う人がいます。修正により、ActionScriptからムービーが明示的に停止されているようです。(もちろん、コンパイルされたムービーをそのように制御することはできません。OpenLaszloから生成されます)

于 2009-01-19T15:21:02.630 に答える
1

技術的には、その機能を追加することは可能です (まだ追加されていない場合)。OpenMeetings は現在Apache Incubator プロジェクトです。メーリング リストを通じて開発者に連絡するだけで、開発者があなたを助けることができるはずです。

于 2012-08-14T14:13:59.057 に答える
0

残っているオブジェクトへの JavaScript 参照はありますか?

 //e.g.
 var conf = document.getElementById( 'mySWFObject' );

もしそうなら、明示的に削除を呼び出すことは機能しますか?

 delete window.conf;

(それ以外の場合は、コード/サイトへのリンクを投稿していただけますか?)

于 2009-01-19T15:08:36.557 に答える
0

OpenLaszlo の開発者に、Removed From Stage イベントをリッスンする destory メソッドを組み込むかどうかを尋ねることができます。そこで、すべての再生を明示的に停止します。

于 2009-02-10T09:32:56.617 に答える