0

我是 Javascript 语音识别的新手,选择使用 Annyang 库进行开发。当用户说“你好”时,我想触发“显示日期”按钮(不点击按钮)。但是,它没有用。下面是我的源代码。需要一些帮助,谢谢。

<script src="https://cdnjs.cloudflare.com/ajax/libs/annyang/1.1.0/annyang.min.js"></script>
<button type="button" id="subject" onclick="getElementById('demo').innerHTML=Date()">Show 
    Date</button>
<p id="demo"></p>
<script>
  window.onload = function() {
    if (annyang) {
      var commands = {
        'Hello': function() {
          document.querySelectorAll('#subject').click();
        }
      };
      annyang.addCommands(commands);
      annyang.start();
    }
  }
</script>

4

1 回答 1

0

尝试替换document.querySelectorAlldocument.getElementById.

querySelectorAll返回一个元素数组,而不仅仅是一个元素(这是什么getElementById)。所以你实际上是在调用click()一个数组而不是按钮。您不能“单击”数组。

代码中可能还有其他问题,我自己没有运行过,但这个问题让我很头疼。

于 2020-09-21T15:53:52.633 回答