AudioScheduledSourceNode: stop() 方法
AudioScheduledSourceNode 上的 stop() 方法用于调度声音在指定时间停止播放。如果未指定时间,则声音会立即停止播放。
每次在同一个节点上调用 stop() 时,指定的时间会替换掉任何先前已调度但尚未发生的停止时间。如果节点已停止,则此方法无效。
注意:如果调度的停止时间发生在节点调度的开始时间之前,则该节点将永远不会开始播放。
语法
js
stop()
stop(when)
参数
when可选-
声音应停止播放的秒数。此值使用与
AudioContext的currentTime属性相同的时坐标系指定。省略此参数、指定 0 或负值会导致声音立即停止播放。
返回值
无(undefined)。
异常
InvalidStateNodeDOMException-
如果节点尚未通过调用
start()来启动,则会抛出此异常。 RangeError-
如果为
when指定的值为负数,则会抛出此异常。
示例
此示例演示了如何启动一个振荡器节点,该节点计划立即开始播放并在 1 秒后停止。停止时间通过获取音频上下文的当前时间(来自 AudioContext.currentTime)并加上 1 秒来确定。
js
context = new AudioContext();
osc = context.createOscillator();
osc.connect(context.destination);
/* Let's play a sine wave for one second. */
osc.start();
osc.stop(context.currentTime + 1);
规范
| 规范 |
|---|
| Web Audio API # dom-audioscheduledsourcenode-stop |
浏览器兼容性
加载中…