Javascript API not working for Chrome or Safari on JW Player 5.9

I'm working on a custom interface for JW Player that displays the current track title and has play / pause, next track, previous track and volume buttons.

It works for IE8 / 9 and FF, but doesn't work for Chrome and Safari. Chrome console gives the following error: Uncaught TypeError: Object # has no method 'addControllerListener'

This is the code I am using for testing.

<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've searched and tried several modifications like adding javascriptid parameter, nothing works for Chrome or Safari.

Any ideas? Thanks to

+3


source to share


1 answer


Short

Delete { type: "html5" },

.



Long

HTML5 renders the player with div and img tags and plays your videos, and it doesn't support everything the flash version supports, including the JS API parts.

+2


source







All Articles