1

オーディオの重いページを作成しています。JavaScript オーディオ要素を使用しています。コードは次のようになります。

JavaScript:

var x = new Audio("x.mp3");
var y = new Audio("y.mp3");
var z = new Audio("z.mp3");

function playMe(n){
    n.play();
}

HTML:

<button class="button" onclick="playMe(x)")>Play</button>
<button class="button" onclick="playMe(y)")>Play</button>
<button class="button" onclick="playMe(z)")>Play</button>

一部のページでは、最大 30 個の異なるオーディオ ファイルを使用するため、帯域幅が大量に消費されます。これは、予算がほとんどない 1 人の作業であるため、プロジェクトを台無しにする可能性があります。

オーディオ オブジェクトが宣言されるたびに、オーディオがダウンロードされます。他のページで既にダウンロードされた音声を再ダウンロードせずに他のページで使用する方法はありますか?

御時間ありがとうございます。

4

1 に答える 1

1

キャッシュ マニフェストを使用して、必要なすべてのリソースが 1 回だけダウンロードされ、オフライン ブラウジングであっても適切にキャッシュされるようにすることができます。参照: 「オフライン」: どういう意味ですか? なぜ気にする必要があるのですか? HTML5Rocks で。

適切なキャッシュの代わりに (またはそれに加えて) 使用できるもう 1 つのことは、ページを実際にはリロードせず、この単純なデモのように AJAX を使用してページの一部のみをリロードすることです。jQuery、YUI、Prototype、Dojo などの多くの JavaScript フレームワークがそれを支援します。

于 2012-09-23T09:54:59.923 に答える