Changeset 953


Ignore:
Timestamp:
04/26/10 02:17:19 (3 years ago)
Author:
zach
Message:
  • Initial buffer correct
Location:
trunk/html5
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/html5/jquery.jwplayer.js

    r952 r953  
    1717        }; 
    1818         
    19                  
     19         
    2020        /** Map with config for the jwplayerControlbar plugin. **/ 
    2121        $.fn.jwplayerControlbar.defaults = { 
     
    3030         
    3131        /** Callbacks called by Flash players to update stats. **/ 
    32         $.fn.jwplayerControlbar.bufferHandler = function(obj) {  
     32        $.fn.jwplayerControlbar.bufferHandler = function(obj) { 
    3333                bufferHandler({ 
    3434                        id: obj.id, 
     
    7070        function buildElements(player) { 
    7171                // Draw the background. 
    72                 player.model.domelement.parents(":first").append('<div id="' +player.id + '_jwplayerControlbar"></div>'); 
    73                 $("#"+player.id + '_jwplayerControlbar').css('position', 'relative'); 
    74                 $("#"+player.id + '_jwplayerControlbar').css('height', player.skin.controlbar.elements.background.height); 
    75                 $("#"+player.id + '_jwplayerControlbar').css('background', 'url(' + player.skin.controlbar.elements.background.src + ') repeat-x center left'); 
     72                player.model.domelement.parents(":first").append('<div id="' + player.id + '_jwplayerControlbar"></div>'); 
     73                $("#" + player.id + '_jwplayerControlbar').css('position', 'relative'); 
     74                $("#" + player.id + '_jwplayerControlbar').css('height', player.skin.controlbar.elements.background.height); 
     75                $("#" + player.id + '_jwplayerControlbar').css('background', 'url(' + player.skin.controlbar.elements.background.src + ') repeat-x center left'); 
    7676                // Draw all elements on top of the bar. 
    7777                buildElement('capLeft', 'left', true, player); 
     
    9999        /** Draw a single element into the jwplayerControlbar. **/ 
    100100        function buildElement(element, align, offset, player) { 
    101                 var nam =player.id + '_' + element; 
    102                 $('#' +player.id + '_jwplayerControlbar').append('<div id="' + nam + '"></div>'); 
     101                var nam = player.id + '_' + element; 
     102                $('#' + player.id + '_jwplayerControlbar').append('<div id="' + nam + '"></div>'); 
    103103                $('#' + nam).css('position', 'absolute'); 
    104104                $('#' + nam).css('top', 0); 
     
    145145                 
    146146                addSliders(player); 
    147  
     147                 
    148148                // Register events with the player. 
    149149                player.buffer($.fn.jwplayerControlbar.bufferHandler); 
     
    174174                                evt.stopPropagation(); 
    175175                                if (args !== undefined) { 
    176                                         player[handler](args);   
     176                                        player[handler](args); 
    177177                                } else { 
    178178                                        player[handler](); 
     
    186186        /** Set the volume drag handler. **/ 
    187187        function addSliders(player) { 
    188                 var bar = '#' +player.id + '_jwplayerControlbar'; 
    189                 var trl = '#' +player.id + '_timeSliderRail'; 
    190                 var vrl = '#' +player.id + '_volumeSliderRail'; 
     188                var bar = '#' + player.id + '_jwplayerControlbar'; 
     189                var trl = '#' + player.id + '_timeSliderRail'; 
     190                var vrl = '#' + player.id + '_volumeSliderRail'; 
    191191                $(bar).css('cursor', 'hand'); 
    192192                $(trl).css('cursor', 'hand'); 
    193193                $(vrl).css('cursor', 'hand'); 
    194194                $(bar).mousedown(function(evt) { 
    195                         var xps = evt.pageX - $(bar).position().left - $('#' +player.id + '_jwplayerControlbar').parents(":first").position().left; 
     195                        var xps = evt.pageX - $(bar).position().left - $('#' + player.id + '_jwplayerControlbar').parents(":first").position().left; 
    196196                        if (xps > $(trl).position().left && xps < $(trl).position().left + $(trl).width()) { 
    197197                                player.controlbar.scrubber = 'time'; 
     
    211211                        if (player.controlbar.scrubber == 'time') { 
    212212                                var xps = evt.pageX - $(bar).position().left; 
    213                                 $('#' +player.id + '_timeSliderThumb').css('left', xps); 
     213                                $('#' + player.id + '_timeSliderThumb').css('left', xps); 
    214214                        } 
    215215                }); 
     
    220220        function sliderUp(msx, player) { 
    221221                if (player.controlbar.scrubber == 'time') { 
    222                         var xps = msx - $('#' +player.id + '_timeSliderRail').position().left - $('#' +player.id + '_jwplayerControlbar').parents(":first").position().left; 
    223                         var wid = $('#' +player.id + '_timeSliderRail').width(); 
     222                        var xps = msx - $('#' + player.id + '_timeSliderRail').position().left - $('#' + player.id + '_jwplayerControlbar').parents(":first").position().left; 
     223                        var wid = $('#' + player.id + '_timeSliderRail').width(); 
    224224                        var pos = xps / wid * player.duration(); 
    225225                        if (pos < 0) { 
     
    230230                        player.seek(pos); 
    231231                } else if (player.controlbar.scrubber == 'volume') { 
    232                         var bar = $('#' +player.id + '_jwplayerControlbar').width(); 
    233                         var brx = $('#' +player.id + '_jwplayerControlbar').position().left +  $('#' +player.id + '_jwplayerControlbar').parents(":first").position().left; 
    234                         var rig = $('#' +player.id + '_volumeSliderRail').css('right').substr(0, 2); 
     232                        var bar = $('#' + player.id + '_jwplayerControlbar').width(); 
     233                        var brx = $('#' + player.id + '_jwplayerControlbar').position().left + $('#' + player.id + '_jwplayerControlbar').parents(":first").position().left; 
     234                        var rig = $('#' + player.id + '_volumeSliderRail').css('right').substr(0, 2); 
    235235                        var wid = player.skin.controlbar.elements.volumeSliderRail.width; 
    236236                        var pct = Math.round((msx - bar - brx + 1 * rig + wid) / wid * 100); 
     
    250250                var player = $.jwplayer(event.id); 
    251251                if (event.bufferPercent === 0) { 
    252                         $('#' +player.id + '_timeSliderBuffer').css('display', 'none'); 
     252                        $('#' + player.id + '_timeSliderBuffer').css('display', 'none'); 
    253253                } else { 
    254                         $('#' +player.id + '_timeSliderBuffer').css('display', 'block'); 
    255                         var wid = $('#' +player.id + '_timeSliderRail').width(); 
    256                         $('#' +player.id + '_timeSliderBuffer').css('width', Math.round(wid * event.bufferPercent / 100)); 
     254                        if (player.state() != $.fn.jwplayer.states.IDLE) { 
     255                                $('#' + player.id + '_timeSliderBuffer').css('display', 'block'); 
     256                        } 
     257                        var wid = $('#' + player.id + '_timeSliderRail').width(); 
     258                        $('#' + player.id + '_timeSliderBuffer').css('width', Math.round(wid * event.bufferPercent / 100)); 
    257259                } 
    258260        } 
     
    263265                var player = $.jwplayer(event.id); 
    264266                if (player.mute()) { 
    265                         $('#' +player.id + '_muteButton').css('display', 'none'); 
    266                         $('#' +player.id + '_unmuteButton').css('display', 'block'); 
    267                         $('#' +player.id + '_volumeSliderProgress').css('display', 'none'); 
     267                        $('#' + player.id + '_muteButton').css('display', 'none'); 
     268                        $('#' + player.id + '_unmuteButton').css('display', 'block'); 
     269                        $('#' + player.id + '_volumeSliderProgress').css('display', 'none'); 
    268270                } else { 
    269                         $('#' +player.id + '_muteButton').css('display', 'block'); 
    270                         $('#' +player.id + '_unmuteButton').css('display', 'none'); 
    271                         $('#' +player.id + '_volumeSliderProgress').css('display', 'block'); 
     271                        $('#' + player.id + '_muteButton').css('display', 'block'); 
     272                        $('#' + player.id + '_unmuteButton').css('display', 'none'); 
     273                        $('#' + player.id + '_volumeSliderProgress').css('display', 'block'); 
    272274                } 
    273275        } 
     
    277279        function stateHandler(event) { 
    278280                var player = $.jwplayer(event.id); 
    279                 if (player.state() == $.fn.jwplayer.states.BUFFERING || player.state() ==  $.fn.jwplayer.states.PLAYING) { 
    280                         $('#' +player.id + '_pauseButton').css('display', 'block'); 
    281                         $('#' +player.id + '_playButton').css('display', 'none'); 
     281                if (player.state() == $.fn.jwplayer.states.BUFFERING || player.state() == $.fn.jwplayer.states.PLAYING) { 
     282                        $('#' + player.id + '_pauseButton').css('display', 'block'); 
     283                        $('#' + player.id + '_playButton').css('display', 'none'); 
    282284                } else { 
    283                         $('#' +player.id + '_pauseButton').css('display', 'none'); 
    284                         $('#' +player.id + '_playButton').css('display', 'block'); 
    285                 } 
    286                 if (player.state() ==  $.fn.jwplayer.states.IDLE) { 
     285                        $('#' + player.id + '_pauseButton').css('display', 'none'); 
     286                        $('#' + player.id + '_playButton').css('display', 'block'); 
     287                } 
     288                if (player.state() == $.fn.jwplayer.states.IDLE) { 
    287289                        timeHandler({ 
    288290                                id: player.id, 
     
    296298        function timeHandler(event) { 
    297299                var player = $.jwplayer(event.id); 
    298                 var wid = $('#' +player.id + '_timeSliderRail').width(); 
    299                 var thb = $('#' +player.id + '_timeSliderThumb').width(); 
    300                 var lft = $('#' +player.id + '_timeSliderRail').position().left; 
     300                var wid = $('#' + player.id + '_timeSliderRail').width(); 
     301                var thb = $('#' + player.id + '_timeSliderThumb').width(); 
     302                var lft = $('#' + player.id + '_timeSliderRail').position().left; 
     303                if (player.state() == $.fn.jwplayer.states.IDLE) { 
     304                        $('#' + player.id + '_timeSliderBuffer').css('display', 'none'); 
     305                } else { 
     306                        $('#' + player.id + '_timeSliderBuffer').css('display', 'block'); 
     307                } 
    301308                if (event.position === 0) { 
    302                         $('#' +player.id + '_timeSliderProgress').css('display', 'none'); 
    303                         $('#' +player.id + '_timeSliderThumb').css('display', 'none'); 
     309                        $('#' + player.id + '_timeSliderProgress').css('display', 'none'); 
     310                        $('#' + player.id + '_timeSliderThumb').css('display', 'none'); 
    304311                } else { 
    305                         $('#' +player.id + '_timeSliderProgress').css('display', 'block'); 
    306                         $('#' +player.id + '_timeSliderProgress').css('width', Math.round(wid * event.position / event.duration)); 
    307                         $('#' +player.id + '_timeSliderThumb').css('display', 'block'); 
    308                         $('#' +player.id + '_timeSliderThumb').css('left', lft + 
     312                        $('#' + player.id + '_timeSliderProgress').css('display', 'block'); 
     313                        $('#' + player.id + '_timeSliderProgress').css('width', Math.round(wid * event.position / event.duration)); 
     314                        $('#' + player.id + '_timeSliderThumb').css('display', 'block'); 
     315                        $('#' + player.id + '_timeSliderThumb').css('left', lft + 
    309316                        Math.round((wid - thb) * event.position / event.duration)); 
    310                         $('#' +player.id + '_durationText').html(timeFormat(event.duration)); 
    311                 } 
    312                 $('#' +player.id + '_elapsedText').html(timeFormat(event.position)); 
     317                        $('#' + player.id + '_durationText').html(timeFormat(event.duration)); 
     318                } 
     319                $('#' + player.id + '_elapsedText').html(timeFormat(event.position)); 
    313320        } 
    314321         
     
    334341                        //$('#' + options.div).css('height', '100%'); 
    335342                        //$('#' + options.div).css('width', '100%'); 
    336                         $('#' +player.id + '_normalscreenButton').css('display', 'block'); 
    337                         $('#' +player.id + '_fullscreenButton').css('display', 'none'); 
     343                        $('#' + player.id + '_normalscreenButton').css('display', 'block'); 
     344                        $('#' + player.id + '_fullscreenButton').css('display', 'none'); 
    338345                        $(window).resize(function() { 
    339346                                resizeBar(player); 
     
    345352                        //$('#' + options.div).css('height', options.height); 
    346353                        //$('#' + options.div).css('width', options.width); 
    347                         $('#' +player.id + '_normalscreenButton').css('display', 'none'); 
    348                         $('#' +player.id + '_fullscreenButton').css('display', 'block'); 
     354                        $('#' + player.id + '_normalscreenButton').css('display', 'none'); 
     355                        $('#' + player.id + '_fullscreenButton').css('display', 'block'); 
    349356                        $(window).resize(null); 
    350357                } 
     
    360367                var top = player.controlbar.top; 
    361368                var wid = player.model.config.width; 
    362                 var hei = $('#' +player.id + '_jwplayerControlbar').height(); 
     369                var hei = $('#' + player.id + '_jwplayerControlbar').height(); 
    363370                if (player.controlbar.position == 'over') { 
    364371                        lft += 1 * player.controlbar.margin; 
     
    370377                        top = $(window).height() - player.controlbar.margin - hei; 
    371378                        wid = $(window).width() - 2 * player.controlbar.margin; 
    372                         $('#' +player.id + '_jwplayerControlbar').css('z-index', 99); 
     379                        $('#' + player.id + '_jwplayerControlbar').css('z-index', 99); 
    373380                } else { 
    374                         $('#' +player.id + '_jwplayerControlbar').css('z-index', 97); 
    375                 } 
    376                 $('#' +player.id + '_jwplayerControlbar').css('left', lft); 
    377                 $('#' +player.id + '_jwplayerControlbar').css('top', top); 
    378                 $('#' +player.id + '_jwplayerControlbar').css('width', wid); 
    379                 $('#' +player.id + '_timeSliderRail').css('width', wid - player.controlbar.leftmargin - player.controlbar.rightmargin); 
     381                        $('#' + player.id + '_jwplayerControlbar').css('z-index', 97); 
     382                } 
     383                $('#' + player.id + '_jwplayerControlbar').css('left', lft); 
     384                $('#' + player.id + '_jwplayerControlbar').css('top', top); 
     385                $('#' + player.id + '_jwplayerControlbar').css('width', wid); 
     386                $('#' + player.id + '_timeSliderRail').css('width', wid - player.controlbar.leftmargin - player.controlbar.rightmargin); 
    380387        } 
    381388         
     
    384391        function volumeHandler(event) { 
    385392                var player = $.jwplayer(event.id); 
    386                 var rwd = $('#' +player.id + '_volumeSliderRail').width(); 
     393                var rwd = $('#' + player.id + '_volumeSliderRail').width(); 
    387394                var wid = Math.round(event.volume / 100 * rwd); 
    388                 var rig = $('#' +player.id + '_volumeSliderRail').css('right').substr(0, 2); 
    389                 $('#' +player.id + '_volumeSliderProgress').css('width', wid); 
    390                 $('#' +player.id + '_volumeSliderProgress').css('right', 1 * rig + rwd - wid); 
     395                var rig = $('#' + player.id + '_volumeSliderRail').css('right').substr(0, 2); 
     396                $('#' + player.id + '_volumeSliderProgress').css('width', wid); 
     397                $('#' + player.id + '_volumeSliderProgress').css('right', 1 * rig + rwd - wid); 
    391398        } 
    392399         
     
    12521259                        }, 100); 
    12531260                } 
     1261                player.model.duration = event.target.duration; 
    12541262                sendEvent(player, $.fn.jwplayer.events.JWPLAYER_MEDIA_TIME, { 
    12551263                        position: event.target.currentTime, 
     
    12621270                if (!isNaN(event.loaded / event.total)) { 
    12631271                        buffer = event.loaded / event.total * 100; 
    1264                 } else if (player.model.domelement.buffered !== undefined) { 
    1265                         buffer = player.model.domelement.buffered.end(0) / player.model.domelement.duration * 100; 
     1272                } else if (player.model.domelement[0].buffered !== undefined) { 
     1273                        buffer = player.model.domelement[0].buffered.end(0) / player.model.domelement[0].duration * 100; 
    12661274                } 
    12671275                sendEvent(player, $.fn.jwplayer.events.JWPLAYER_MEDIA_BUFFER, { 
  • trunk/html5/src/jquery.jwplayerControlbar.js

    r952 r953  
    1717        }; 
    1818         
    19                  
     19         
    2020        /** Map with config for the jwplayerControlbar plugin. **/ 
    2121        $.fn.jwplayerControlbar.defaults = { 
     
    3030         
    3131        /** Callbacks called by Flash players to update stats. **/ 
    32         $.fn.jwplayerControlbar.bufferHandler = function(obj) {  
     32        $.fn.jwplayerControlbar.bufferHandler = function(obj) { 
    3333                bufferHandler({ 
    3434                        id: obj.id, 
     
    7070        function buildElements(player) { 
    7171                // Draw the background. 
    72                 player.model.domelement.parents(":first").append('<div id="' +player.id + '_jwplayerControlbar"></div>'); 
    73                 $("#"+player.id + '_jwplayerControlbar').css('position', 'relative'); 
    74                 $("#"+player.id + '_jwplayerControlbar').css('height', player.skin.controlbar.elements.background.height); 
    75                 $("#"+player.id + '_jwplayerControlbar').css('background', 'url(' + player.skin.controlbar.elements.background.src + ') repeat-x center left'); 
     72                player.model.domelement.parents(":first").append('<div id="' + player.id + '_jwplayerControlbar"></div>'); 
     73                $("#" + player.id + '_jwplayerControlbar').css('position', 'relative'); 
     74                $("#" + player.id + '_jwplayerControlbar').css('height', player.skin.controlbar.elements.background.height); 
     75                $("#" + player.id + '_jwplayerControlbar').css('background', 'url(' + player.skin.controlbar.elements.background.src + ') repeat-x center left'); 
    7676                // Draw all elements on top of the bar. 
    7777                buildElement('capLeft', 'left', true, player); 
     
    9999        /** Draw a single element into the jwplayerControlbar. **/ 
    100100        function buildElement(element, align, offset, player) { 
    101                 var nam =player.id + '_' + element; 
    102                 $('#' +player.id + '_jwplayerControlbar').append('<div id="' + nam + '"></div>'); 
     101                var nam = player.id + '_' + element; 
     102                $('#' + player.id + '_jwplayerControlbar').append('<div id="' + nam + '"></div>'); 
    103103                $('#' + nam).css('position', 'absolute'); 
    104104                $('#' + nam).css('top', 0); 
     
    145145                 
    146146                addSliders(player); 
    147  
     147                 
    148148                // Register events with the player. 
    149149                player.buffer($.fn.jwplayerControlbar.bufferHandler); 
     
    174174                                evt.stopPropagation(); 
    175175                                if (args !== undefined) { 
    176                                         player[handler](args);   
     176                                        player[handler](args); 
    177177                                } else { 
    178178                                        player[handler](); 
     
    186186        /** Set the volume drag handler. **/ 
    187187        function addSliders(player) { 
    188                 var bar = '#' +player.id + '_jwplayerControlbar'; 
    189                 var trl = '#' +player.id + '_timeSliderRail'; 
    190                 var vrl = '#' +player.id + '_volumeSliderRail'; 
     188                var bar = '#' + player.id + '_jwplayerControlbar'; 
     189                var trl = '#' + player.id + '_timeSliderRail'; 
     190                var vrl = '#' + player.id + '_volumeSliderRail'; 
    191191                $(bar).css('cursor', 'hand'); 
    192192                $(trl).css('cursor', 'hand'); 
    193193                $(vrl).css('cursor', 'hand'); 
    194194                $(bar).mousedown(function(evt) { 
    195                         var xps = evt.pageX - $(bar).position().left - $('#' +player.id + '_jwplayerControlbar').parents(":first").position().left; 
     195                        var xps = evt.pageX - $(bar).position().left - $('#' + player.id + '_jwplayerControlbar').parents(":first").position().left; 
    196196                        if (xps > $(trl).position().left && xps < $(trl).position().left + $(trl).width()) { 
    197197                                player.controlbar.scrubber = 'time'; 
     
    211211                        if (player.controlbar.scrubber == 'time') { 
    212212                                var xps = evt.pageX - $(bar).position().left; 
    213                                 $('#' +player.id + '_timeSliderThumb').css('left', xps); 
     213                                $('#' + player.id + '_timeSliderThumb').css('left', xps); 
    214214                        } 
    215215                }); 
     
    220220        function sliderUp(msx, player) { 
    221221                if (player.controlbar.scrubber == 'time') { 
    222                         var xps = msx - $('#' +player.id + '_timeSliderRail').position().left - $('#' +player.id + '_jwplayerControlbar').parents(":first").position().left; 
    223                         var wid = $('#' +player.id + '_timeSliderRail').width(); 
     222                        var xps = msx - $('#' + player.id + '_timeSliderRail').position().left - $('#' + player.id + '_jwplayerControlbar').parents(":first").position().left; 
     223                        var wid = $('#' + player.id + '_timeSliderRail').width(); 
    224224                        var pos = xps / wid * player.duration(); 
    225225                        if (pos < 0) { 
     
    230230                        player.seek(pos); 
    231231                } else if (player.controlbar.scrubber == 'volume') { 
    232                         var bar = $('#' +player.id + '_jwplayerControlbar').width(); 
    233                         var brx = $('#' +player.id + '_jwplayerControlbar').position().left +  $('#' +player.id + '_jwplayerControlbar').parents(":first").position().left; 
    234                         var rig = $('#' +player.id + '_volumeSliderRail').css('right').substr(0, 2); 
     232                        var bar = $('#' + player.id + '_jwplayerControlbar').width(); 
     233                        var brx = $('#' + player.id + '_jwplayerControlbar').position().left + $('#' + player.id + '_jwplayerControlbar').parents(":first").position().left; 
     234                        var rig = $('#' + player.id + '_volumeSliderRail').css('right').substr(0, 2); 
    235235                        var wid = player.skin.controlbar.elements.volumeSliderRail.width; 
    236236                        var pct = Math.round((msx - bar - brx + 1 * rig + wid) / wid * 100); 
     
    250250                var player = $.jwplayer(event.id); 
    251251                if (event.bufferPercent === 0) { 
    252                         $('#' +player.id + '_timeSliderBuffer').css('display', 'none'); 
    253                 } else { 
    254                         $('#' +player.id + '_timeSliderBuffer').css('display', 'block'); 
    255                         var wid = $('#' +player.id + '_timeSliderRail').width(); 
    256                         $('#' +player.id + '_timeSliderBuffer').css('width', Math.round(wid * event.bufferPercent / 100)); 
     252                        $('#' + player.id + '_timeSliderBuffer').css('display', 'none'); 
     253                } else { 
     254                        if (player.state() != $.fn.jwplayer.states.IDLE) { 
     255                                $('#' + player.id + '_timeSliderBuffer').css('display', 'block'); 
     256                        } 
     257                        var wid = $('#' + player.id + '_timeSliderRail').width(); 
     258                        $('#' + player.id + '_timeSliderBuffer').css('width', Math.round(wid * event.bufferPercent / 100)); 
    257259                } 
    258260        } 
     
    263265                var player = $.jwplayer(event.id); 
    264266                if (player.mute()) { 
    265                         $('#' +player.id + '_muteButton').css('display', 'none'); 
    266                         $('#' +player.id + '_unmuteButton').css('display', 'block'); 
    267                         $('#' +player.id + '_volumeSliderProgress').css('display', 'none'); 
    268                 } else { 
    269                         $('#' +player.id + '_muteButton').css('display', 'block'); 
    270                         $('#' +player.id + '_unmuteButton').css('display', 'none'); 
    271                         $('#' +player.id + '_volumeSliderProgress').css('display', 'block'); 
     267                        $('#' + player.id + '_muteButton').css('display', 'none'); 
     268                        $('#' + player.id + '_unmuteButton').css('display', 'block'); 
     269                        $('#' + player.id + '_volumeSliderProgress').css('display', 'none'); 
     270                } else { 
     271                        $('#' + player.id + '_muteButton').css('display', 'block'); 
     272                        $('#' + player.id + '_unmuteButton').css('display', 'none'); 
     273                        $('#' + player.id + '_volumeSliderProgress').css('display', 'block'); 
    272274                } 
    273275        } 
     
    277279        function stateHandler(event) { 
    278280                var player = $.jwplayer(event.id); 
    279                 if (player.state() == $.fn.jwplayer.states.BUFFERING || player.state() ==  $.fn.jwplayer.states.PLAYING) { 
    280                         $('#' +player.id + '_pauseButton').css('display', 'block'); 
    281                         $('#' +player.id + '_playButton').css('display', 'none'); 
    282                 } else { 
    283                         $('#' +player.id + '_pauseButton').css('display', 'none'); 
    284                         $('#' +player.id + '_playButton').css('display', 'block'); 
    285                 } 
    286                 if (player.state() ==  $.fn.jwplayer.states.IDLE) { 
     281                if (player.state() == $.fn.jwplayer.states.BUFFERING || player.state() == $.fn.jwplayer.states.PLAYING) { 
     282                        $('#' + player.id + '_pauseButton').css('display', 'block'); 
     283                        $('#' + player.id + '_playButton').css('display', 'none'); 
     284                } else { 
     285                        $('#' + player.id + '_pauseButton').css('display', 'none'); 
     286                        $('#' + player.id + '_playButton').css('display', 'block'); 
     287                } 
     288                if (player.state() == $.fn.jwplayer.states.IDLE) { 
    287289                        timeHandler({ 
    288290                                id: player.id, 
     
    296298        function timeHandler(event) { 
    297299                var player = $.jwplayer(event.id); 
    298                 var wid = $('#' +player.id + '_timeSliderRail').width(); 
    299                 var thb = $('#' +player.id + '_timeSliderThumb').width(); 
    300                 var lft = $('#' +player.id + '_timeSliderRail').position().left; 
     300                var wid = $('#' + player.id + '_timeSliderRail').width(); 
     301                var thb = $('#' + player.id + '_timeSliderThumb').width(); 
     302                var lft = $('#' + player.id + '_timeSliderRail').position().left; 
     303                if (player.state() == $.fn.jwplayer.states.IDLE) { 
     304                        $('#' + player.id + '_timeSliderBuffer').css('display', 'none'); 
     305                } else { 
     306                        $('#' + player.id + '_timeSliderBuffer').css('display', 'block'); 
     307                } 
    301308                if (event.position === 0) { 
    302                         $('#' +player.id + '_timeSliderProgress').css('display', 'none'); 
    303                         $('#' +player.id + '_timeSliderThumb').css('display', 'none'); 
    304                 } else { 
    305                         $('#' +player.id + '_timeSliderProgress').css('display', 'block'); 
    306                         $('#' +player.id + '_timeSliderProgress').css('width', Math.round(wid * event.position / event.duration)); 
    307                         $('#' +player.id + '_timeSliderThumb').css('display', 'block'); 
    308                         $('#' +player.id + '_timeSliderThumb').css('left', lft + 
     309                        $('#' + player.id + '_timeSliderProgress').css('display', 'none'); 
     310                        $('#' + player.id + '_timeSliderThumb').css('display', 'none'); 
     311                } else { 
     312                        $('#' + player.id + '_timeSliderProgress').css('display', 'block'); 
     313                        $('#' + player.id + '_timeSliderProgress').css('width', Math.round(wid * event.position / event.duration)); 
     314                        $('#' + player.id + '_timeSliderThumb').css('display', 'block'); 
     315                        $('#' + player.id + '_timeSliderThumb').css('left', lft + 
    309316                        Math.round((wid - thb) * event.position / event.duration)); 
    310                         $('#' +player.id + '_durationText').html(timeFormat(event.duration)); 
    311                 } 
    312                 $('#' +player.id + '_elapsedText').html(timeFormat(event.position)); 
     317                        $('#' + player.id + '_durationText').html(timeFormat(event.duration)); 
     318                } 
     319                $('#' + player.id + '_elapsedText').html(timeFormat(event.position)); 
    313320        } 
    314321         
     
    334341                        //$('#' + options.div).css('height', '100%'); 
    335342                        //$('#' + options.div).css('width', '100%'); 
    336                         $('#' +player.id + '_normalscreenButton').css('display', 'block'); 
    337                         $('#' +player.id + '_fullscreenButton').css('display', 'none'); 
     343                        $('#' + player.id + '_normalscreenButton').css('display', 'block'); 
     344                        $('#' + player.id + '_fullscreenButton').css('display', 'none'); 
    338345                        $(window).resize(function() { 
    339346                                resizeBar(player); 
     
    345352                        //$('#' + options.div).css('height', options.height); 
    346353                        //$('#' + options.div).css('width', options.width); 
    347                         $('#' +player.id + '_normalscreenButton').css('display', 'none'); 
    348                         $('#' +player.id + '_fullscreenButton').css('display', 'block'); 
     354                        $('#' + player.id + '_normalscreenButton').css('display', 'none'); 
     355                        $('#' + player.id + '_fullscreenButton').css('display', 'block'); 
    349356                        $(window).resize(null); 
    350357                } 
     
    360367                var top = player.controlbar.top; 
    361368                var wid = player.model.config.width; 
    362                 var hei = $('#' +player.id + '_jwplayerControlbar').height(); 
     369                var hei = $('#' + player.id + '_jwplayerControlbar').height(); 
    363370                if (player.controlbar.position == 'over') { 
    364371                        lft += 1 * player.controlbar.margin; 
     
    370377                        top = $(window).height() - player.controlbar.margin - hei; 
    371378                        wid = $(window).width() - 2 * player.controlbar.margin; 
    372                         $('#' +player.id + '_jwplayerControlbar').css('z-index', 99); 
    373                 } else { 
    374                         $('#' +player.id + '_jwplayerControlbar').css('z-index', 97); 
    375                 } 
    376                 $('#' +player.id + '_jwplayerControlbar').css('left', lft); 
    377                 $('#' +player.id + '_jwplayerControlbar').css('top', top); 
    378                 $('#' +player.id + '_jwplayerControlbar').css('width', wid); 
    379                 $('#' +player.id + '_timeSliderRail').css('width', wid - player.controlbar.leftmargin - player.controlbar.rightmargin); 
     379                        $('#' + player.id + '_jwplayerControlbar').css('z-index', 99); 
     380                } else { 
     381                        $('#' + player.id + '_jwplayerControlbar').css('z-index', 97); 
     382                } 
     383                $('#' + player.id + '_jwplayerControlbar').css('left', lft); 
     384                $('#' + player.id + '_jwplayerControlbar').css('top', top); 
     385                $('#' + player.id + '_jwplayerControlbar').css('width', wid); 
     386                $('#' + player.id + '_timeSliderRail').css('width', wid - player.controlbar.leftmargin - player.controlbar.rightmargin); 
    380387        } 
    381388         
     
    384391        function volumeHandler(event) { 
    385392                var player = $.jwplayer(event.id); 
    386                 var rwd = $('#' +player.id + '_volumeSliderRail').width(); 
     393                var rwd = $('#' + player.id + '_volumeSliderRail').width(); 
    387394                var wid = Math.round(event.volume / 100 * rwd); 
    388                 var rig = $('#' +player.id + '_volumeSliderRail').css('right').substr(0, 2); 
    389                 $('#' +player.id + '_volumeSliderProgress').css('width', wid); 
    390                 $('#' +player.id + '_volumeSliderProgress').css('right', 1 * rig + rwd - wid); 
     395                var rig = $('#' + player.id + '_volumeSliderRail').css('right').substr(0, 2); 
     396                $('#' + player.id + '_volumeSliderProgress').css('width', wid); 
     397                $('#' + player.id + '_volumeSliderProgress').css('right', 1 * rig + rwd - wid); 
    391398        } 
    392399         
  • trunk/html5/src/jquery.jwplayerMediaVideo.js

    r952 r953  
    110110                        }, 100); 
    111111                } 
     112                player.model.duration = event.target.duration; 
    112113                sendEvent(player, $.fn.jwplayer.events.JWPLAYER_MEDIA_TIME, { 
    113114                        position: event.target.currentTime, 
     
    120121                if (!isNaN(event.loaded / event.total)) { 
    121122                        buffer = event.loaded / event.total * 100; 
    122                 } else if (player.model.domelement.buffered !== undefined) { 
    123                         buffer = player.model.domelement.buffered.end(0) / player.model.domelement.duration * 100; 
     123                } else if (player.model.domelement[0].buffered !== undefined) { 
     124                        buffer = player.model.domelement[0].buffered.end(0) / player.model.domelement[0].duration * 100; 
    124125                } 
    125126                sendEvent(player, $.fn.jwplayer.events.JWPLAYER_MEDIA_BUFFER, { 
Note: See TracChangeset for help on using the changeset viewer.