6

早送りのplaybackRateが正常に機能しました。今、負の数で巻き戻し部分を試してみましたが、うまくいきません。w3school は、負の数を使用して巻き戻すと言います。 http://www.w3schools.com/tags/av_prop_playbackrate.asp 誰が私がどこを間違えたか教えてくれますか?

ここで私のJavaScriptは早送りのためにコードを動かしました、

$("#speed").click(function() { // button function for 3x fast speed forward
    video.playbackRate = 3.0;
});

するとここでは巻き戻しコードが成功せず、

$("#negative").click(function() { // button function for rewind
    video.playbackRate = -3.0;
});
4

3 に答える 3

7

サンプルフィドル

巻き戻しに関する限り、ブラウザが再生速度オプションを完全にサポートしているようには見えません。ビデオの を使用setintervalして減算することで偽造できます。currentTime

var video = document.getElementById('video');
var intervalRewind;
$(video).on('play',function(){
    video.playbackRate = 1.0;
    clearInterval(intervalRewind);
});
$(video).on('pause',function(){
    video.playbackRate = 1.0;
    clearInterval(intervalRewind);
});
$("#speed").click(function() { // button function for 3x fast speed forward
    video.playbackRate = 3.0;
});
$("#negative").click(function() { // button function for rewind
   intervalRewind = setInterval(function(){
       video.playbackRate = 1.0;
       if(video.currentTime == 0){
           clearInterval(intervalRewind);
           video.pause();
       }
       else{
           video.currentTime += -.1;
       }
            },30);
});

また、間隔をクリアするために、再生ボタンと一時停止ボタンのリスナーをいくつか追加しました。早送りボタンと巻き戻しボタンのトグル機能も検討したいかもしれません。

于 2013-04-16T21:02:27.307 に答える
1
  • サポートされているブラウザでテストしてください。IE10でしか動作しないことがわかりました(かなりずさんですが)

  • IE9で負の値を設定しようとすると、ビデオが一時停止します (0 に設定します)

  • w3schools によると chrome で動作するはずですが、うまくいきませんでした

  • 私はテストしていませんが、Safariでも動作するはずです

于 2013-04-16T20:43:00.097 に答える