0

この問題は、ビデオ プレーヤーの HTML コードを Javascript で記述することに関するものです。より高速な方法がいくつかあると思います(document.createElement、Jqueryなど)。この手順のより良い、より高速な方法を教えてください。前もって感謝します

    function createPlayer(videoSource){
            document.writeln("<div id=\"player\">");
            document.writeln("<object width=\"489\" height=\"414\" >");
            document.writeln("<param name=\"player\" value=\"bin-    debug/FlexPlayer.swf\">");
           //etc
            document.writeln("</embed>");
            document.writeln("</object>");
            document.writeln("</div>");               
    }
4

4 に答える 4

3

でネイティブにdocument.createElementなるのが最速です。ただし、マークアップが大きい場合、この方法を使用するとメンテナンスが困難になります。また、物事を「見える化」することは容易ではありません。

そのような場合、クライアント側のテンプレート ソリューション (jQuery テンプレートやアンダースコア テンプレート、John Resig のマイクロテンプレートなど) とのトレードオフが必要になる場合があります。

もう 1 つのパフォーマンスの向上は、マークアップ全体を作成し、最後に DOM に追加することです (最初に子を追加してから、親を DOM に追加します)。

于 2011-07-29T23:33:07.253 に答える
1

私が知っている jQuery 関数を使用すると、テンプレート HTML スニペットを作成して、後で 1 ~ 2 行のコードで繰り返し使用でき、変数を追加してページに追加できます。

これにはjQueryが必要です(最新のもので問題ありません)http://jquery.com/

tmpl 関数のドキュメントはこちら: http://api.jquery.com/jquery.tmpl/

使用方法の詳細については、jQuery docs の例を読むのが最適です。私自身は使用していないので、良い例を書くことはできませんが、docs サイトには素晴らしいものがあります。

お役に立てれば

EDIT:その機能を実現するためのリソース集約型の方法は、ドキュメントに各行を順番に書き込むのではなく、それらすべてを文字列に追加し、終了したら一度書き込むことです。

例えば:

function createPlayer(videoSource){
            var html="<div id=\"player\">";
            html+="<object width=\"489\" height=\"414\" >";

            //etc            
            document.writeln(html);               
    }

ドキュメントへの行の書き込みは、メモリに文字列を追加するよりも多くのリソースを使用するため、これは高速です。MAXIMUM SPEED の場合、関数の外側で html var を宣言し、それを 1 つの長い文字列としてマークアップに設定してから、それを記述することもできます。

var html;
 function createPlayer(videoSource){
                html="<div id=\"player\"><object width=\"489\" height=\"414\" >"; //and so forth           

                document.writeln(html);               
        }

大きなダウンロード サイズを正当化できる場合は、可能であれば jQuery ソリューションを使用しますが、一般的にはもう少し管理しやすいものです。過去にスクリプトで生成された HTML をたくさん実行したことがありますが、すぐに維持するのが面倒になります。幸運を

于 2011-07-29T23:28:28.753 に答える
1

HTML の一般的な操作と追加には、jQuery をお勧めします。これにより、プロセスがはるかに簡単かつ迅速になります。

詳細については、次を参照してください。

于 2011-07-29T23:32:04.487 に答える
1

これを試すことができます:

function createPlayer(videosource){
    var div = document.createElement('div');

    div.innerHTML = '<object width=\"489\" height=\"414\" >' + 
        '.......'
    document.body.appendChild(div);
}
于 2011-07-29T23:25:55.773 に答える