Durandalフレームワークを使用して構築されたシングル ページ アプリで jwplayer を使用したいと考えています。アイデアは、アプリケーションのナビゲーションに影響されない永続的なオーディオ プレーヤーを作成することです。しかし、デュランダルで jwplayer を読み込めませんでした。
Require.js を使用して、単純な html ファイルに jwplayer を正常にロードしました。しかし、この方法は Durandal (Require.js も使用) では機能しないようです。
これはshell.jsの私のコードです:
define(['jwplayer/jwplayer','durandal/plugins/router','durandal/app'], function (jwplayer,router,app) {
jwplayer.api('player').setup({
width: '320',
height: '40',
sources: [{
file: "rtmp://127.0.0.1:1935/vod/mp3:sample_1.mp3"
},{
file: "http://127.0.0.1:1935/vod/sample_1.mp3/playlist.m3u8"
}]
});
return {
router: router,
activate: function () {
...
}
};
});
そして、shell.html内には次のコードがあります。<div id="player">loading player...</div>
これは私が得るエラーメッセージです:
Uncaught TypeError: Cannot read property 'id' of null jwplayer.js:37
player
要素がデュランダル モジュール内で認識できないようです。この問題の原因は何ですか? Durandal モジュール内に jwplayer を追加するにはどうすればよいですか?