Javascript API не работает для Chrome или Safari в JW Player 5.9 - PullRequest
3 голосов
/ 21 марта 2012

Я работаю над пользовательским интерфейсом для JW Player, который отображает название текущего трека и имеет кнопки воспроизведения / паузы, следующего трека, предыдущего трека и регулировки громкости.

Работает для IE8 / 9 и FFно терпит неудачу для Chrome и Safari.Консоль Chrome выдает следующую ошибку: Uncaught TypeError: У Object # нет метода 'addControllerListener'

Это код, который я использую для тестирования.

<div id="container">Loading the player ...</div>
<script type="text/javascript">
    jwplayer("container").setup({
        image: "preview.jpg",
        height: 320,
        width: 480,
        modes: [
            { type: "html5" },
            { type: "flash", src: "player.swf" }
        ],
        'playlist': [
            { 'file': "audio/01.mp3", 'title': "Track 1" },
            { 'file': "audio/02.mp3", 'title': "Track 2" },
            { 'file': "audio/03.mp3", 'title': "Track 3" }
        ],
    });

    function playerReady(obj)
    {
        player = document.getElementById(obj.id);
        displayFirstItem();
    };

    function displayFirstItem()
    {
        try
        {
            playlist = player.getPlaylist();
        }
        catch(e)
        { 
            setTimeout("displayFirstItem()", 100);
        }

        player.addControllerListener('ITEM', 'itemMonitor');
        itemMonitor({index:0});
    };

    function itemMonitor(obj)
    {
        $('#nowplaying').html('<span><strong>Now Playing:</strong> ' + playlist[obj.index]['title'] + '</span>');
    };
</script>
<div id="nowplaying"></div>
<div class="control_bar">
    <ul>
         <li onclick='player.sendEvent("play");'>[ &#8250; ] Play / Pause</li>
         <li onclick='player.sendEvent("prev");'>[ &laquo; ] Previous item</li>
         <li onclick='player.sendEvent("next");'>[ &raquo; ] Next item</li>
    </ul>
</div>

IЯ искал и пробовал несколько модификаций, таких как добавление параметра javascriptid, похоже, ничего не работает для Chrome или Safari.

Есть идеи?Спасибо

1 Ответ

2 голосов
/ 21 марта 2012

Short

Удалить { type: "html5" },.

Long

HTML5 отображает проигрыватель с тегами div и img и воспроизводит ваши видео, и он не поддерживает все, что поддерживает flash-версия, включая части JS API.

...