【问题标题】:HTML5 Video Playback RateHTML5 视频播放率
【发布时间】:2016-11-15 18:55:52
【问题描述】:

我正在尝试使用下拉窗口来更改视频的播放速率。

我在这里添加了标记选项:

        <select id="playBackRateDrop">
            <option>0.5</option>
            <option selected= "selected">1</option>
            <option>1.5</option>
            <option>2</option>
        </select>

在此处为 getElementById 添加了一个变量var playRate= document.getElementById("playBackRateDrop");

在下拉窗口中添加了一个actionListener playRate.addEventListener("select", setPlaySpeed);

并在这里创建了一个函数

function setPlaySpeed() {
        var rate= playRate.options[selectedIndex].value;
        video.playbackRate= rate;
    }

出于某种原因,从下拉列表中选择一个选项不会改变任何内容,视频会正常播放。

【问题讨论】:

  • 但是有什么问题呢?
  • 更改下拉选择似乎无济于事

标签: javascript html video


【解决方案1】:

您应该监听事件change 而不是select:

playRate.addEventListener("change", setPlaySpeed);

此外,您应该使用playRate.value 来获取选择的值。然后使用parseFloat 获取返回字符串的浮点值。这会产生以下函数:

function setPlaySpeed() {
    var rate= playRate.value;
    video.playbackRate= parseFloat(rate);
}

【讨论】:

  • 没有解决它:/ 我认为这也是问题所在,并且一直在尝试不同的事件,但没有任何效果。我会错误地读取下拉值吗?
  • 应该可以的。
  • 感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 2015-09-07
  • 1970-01-01
  • 2018-09-18
  • 1970-01-01
  • 1970-01-01
  • 2019-08-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多