首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Javascript中SetInterval中的ResponsiveVoice代码:如何停止循环?

Javascript中SetInterval中的ResponsiveVoice代码:如何停止循环?
EN

Stack Overflow用户
提问于 2019-10-11 09:04:47
回答 1查看 54关注 0票数 0

目前,我正在做排队系统,我正在研究使用响应式语音的语音公告。我把它放在setInterval上,但问题是它在循环,声音永远不会停止。

代码语言:javascript
运行
复制
     $( document ).ready(function() {
       setInterval(function() {
         $.ajax({
           url: "/getnewdata",
           cache: false,
         }).done(function(html) {
           $( '#data-container' ).html(html);
         });
         responsiveVoice.speak("{{ $new_call->letter }}-{{ $new_call->number }} please proceed to Counter {{ $new_call->counter_id }}")
       }, 3000);
    });

我只希望语音播音器只循环一次。另一个问题是,当数据是新添加的时候,它应该宣布一个数据。另一个问题是,它说的不是"no. 30",而是"no. 29“。

EN

回答 1

Stack Overflow用户

发布于 2019-10-11 13:24:00

我试一下这个

代码语言:javascript
运行
复制
$( document ).ready(function() {
    setInterval(function() {
      $.ajax({
        url: "/getnewdata",
        cache: false,
      }).done(function(html) {
          $( '#data-container' ).html(html);
          setTimeout(function() {
            function voiceStartCallback() {
                console.log("Voice started");
            }

            function voiceEndCallback() {
                console.log("Voice ended");
            }

            var parameters = {
                onstart: voiceStartCallback,
                onend: voiceEndCallback
            }
            responsiveVoice.speak("{{ $new_call->letter }}-{{ $new_call->number }} please proceed to Counter {{ $new_call->counter_id }}", parameters)
          }, 800);
      });
    }, 3000);    
  });

当我查看控制台时,它有一个错误:未捕获队列:无法在队列178的ResponsiveVoice.a.speak (responsivevoice.js?key=8PNDpxy8:117)读取null的属性'deprecated‘of TypeError

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58332920

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档