代码之家  ›  专栏  ›  技术社区  ›  Steven Matthews

尝试向Javascript中的语音合成对象添加自定义事件

  •  0
  • Steven Matthews  · 技术社区  · 7 年前

    我正在尝试向Javascript中的语音合成对象添加自定义事件。

    let msg = new SpeechSynthesisUtterance();
    msg.voiceURI = 'native';
    msg.volume = 1;
    msg.rate = .7;
    msg.pitch = 1;
    msg.text = '恭喜发财';
    msg.lang = 'zh-CN';
    
    var event = new Event('build');
    msg.addEventListener('build', function (e) { console.log("custom event success"); }, false);
    msg.dispatchEvent(event);
    

    当我运行这段代码时,什么都不会发生,我也不确定我的方向是否正确。

    我试图创建一个比“onboundary”事件更细粒度的事件,它只测量单词或句子的结尾,并给出字符索引。

    我想测量语音合成API中每一个字符的结尾-这实际上可能不是正确的方法-但我对Javascript事件系统的理解还不完整。

    我如何添加一个定制事件来激发语音合成的charIndex值的每次更改?

    https://developer.mozilla.org/en-US/docs/Web/API/SpeechSynthesisEvent/charIndex

    0 回复  |  直到 7 年前