2

わかりましたので、基本的には、投稿の最後に 1 行のコードを入れようとしています。

<p id="audioembed">Click here to <a href="http://www.site.com/mp3file.mp3"> download MP3</a></p>

ページの下部には、ユーザーが iPhone、iPad、または iPod で表示しているかどうかを確認するスクリプトがあり、mp3 の URL を取得し、要素をクリアして、基本的な HTML5 オーディオを追加します。その代わりにプレーヤー:

<script>
jQuery(document).ready(function($) {
if(navigator.platform == 'iPad' || navigator.platform == 'iPhone' || navigator.platform == 'iPod')
{
var audioElement = $('#audioembed'), href = audioElement.children('a').attr('href');
$.template("audioTemplate", "<audio src='${src}' controls>")
audioElement.empty();
$.tmpl("audioTemplate", {src: href}).appendTo(audioElement);
};
});
</script>

しかし、何らかの理由で、まったく機能していません。iDevice チェックが機能していることはわかっているので (テンプレートの行を CSS の色の変更などの基本的なものに置き換えれば問題なく機能します)、テンプレートをいじる必要があります。この問題に光を当てていただければ幸いです。

4

2 に答える 2

0

テンプレートは有効な JavaScript 文字列リテラルである必要があると思います:

$.template("audioTemplate", "<audio src='${src}' controls>");
于 2012-06-12T20:13:04.303 に答える
0

テンプレート関数が機能しない理由がわからなかったので、今のところ、次のように URL をプルする基本的な追加を使用して、簡単な方法に進みました。

<script>
jQuery(document).ready(function($) {
(navigator.platform == 'iPad' || navigator.platform == 'iPhone' || navigator.platform == 'iPod')
{
var audioElement = $('#audioembed'), href = audioElement.children('a').attr('href');
audioElement.empty();
audioElement.append('<audio src="'+href+'"controls>');
};
});
</script>

とりあえずやるしかない。元の計画がうまくいかなかった理由を誰かが理解しているかどうかを知りたい. ありがとう!

于 2012-06-14T00:48:44.837 に答える