0

Jwオーディオプレーヤーを備えたphpページがあり、約5500のリンクがあり、各リンクのonclickイベントにjavascript関数が添付されています。php は、ファイルの正確な相対パスと名前を生成し、javascript に渡します。

<a class="items" href="#" 
onclick="play1('<?php echo $fname."'".","."'".$f; ?>');return false">
<?php echo($fname);?>
</a>

最初に私はそれを中<li>に包み、これと上記の中に画像を持っていました<a>。私のページ(明らかに)は遅く、プレーヤーがファイルをロードするのに時間がかかります。<li>タグを削除しました。現在は単純な5500<a>タグで、ページの応答性が大幅に向上しています。ページが遅くなる原因は何か知りたいのですが、内部のリンクが多<li>すぎるか、JavaScript関数が添付されているだけです。

この状況を処理する最も効率的な方法は何でしょうか。オーバーヘッドをできるだけ最小限に抑えるために、使用できる最も軽いタグは何でしょうか?

ありがとう。

4

2 に答える 2

2

主な問題は、最初からページに非常に多くのリンクがあり、その上に、javascript、サーバーからブラウザーへのヘッダーなどのオーバーヘッドがあることだと思います。そのようなものをすばやく作成する唯一の方法は、生成することです<a><br/>sを使用するだけです。

そうは言っても、JavaScript は、<li>要素のレンダリング、プレーヤーの読み込み、ユーザーへの音楽 (ビデオまたは音楽だと思います) の送信、コンテンツのブラウザーへの読み込みのオーバーヘッドを少し増やし、速度を落とします。など。 通常、これらのこと (プレーヤーのロードとコンテンツのストリーミングを除く) は高速に実行できますが、その多くの要素を考慮すると、間違いなく合計されます。そのページがまともな応答時間を得る唯一の方法は、純粋に と を使用<a><br />、別のページで実際のメディア再生を処理することです。コメントに記載されているように、ページネーションを提案するか、それを回避できる場合は同様のことをお勧めします。

于 2013-02-28T16:14:30.313 に答える
1

あなたのページはまだ遅い<a>ですか?のページの構造はどのようなものでした<li>か?

の親である要素で単一の JavaScript ハンドラーを使用することで、パフォーマンスがいくらか向上する可能性があり<a>ます。また、どのリンクがクリックされたかをイベント バブルに知らせることができます。( http://davidwalsh.name/event-delegateを参照してください。)

于 2013-02-28T16:30:40.300 に答える