【问题标题】:Calling many functions in one HTML tag在一个 HTML 标签中调用多个函数
【发布时间】:2016-07-05 17:15:38
【问题描述】:

下面的浏览器聊天代码可以作为一个整体运行,但并不整洁。

<p>chat in silence:</p>
<input id="yousay" name="input" size="52" onkeydown="if (event.keyCode == 13) { doTalk(); }"/>

<p>chat in with music:</p>
 <textarea onfocus="clearContents(this);" id="chat" cols="50" rows="2" ></textarea>

 <button type="button" onclick="triggerAll();">answer</button>

这些是脚本:

<script src="scripts/soundEngine.js"></script>
<script src="scripts/animationEngine.js"></script> 
<script src="scripts/talk.js"></script>

这会调用机器人 API

<script>
  var pb = new Pandorabot("aiaas.pandorabots.com", 'validid', 'validname', 'validid'); 
  function doTalk() {
    var input = document.getElementById("yousay").value;
    document.getElementById("yousay").value = "";
    pb.talk(input, function(data) {
      var response = data["responses"];
      document.getElementById("response").innerHTML = response;
      console.log(response);
    });
  }
</script>

这是一个一次性调用它们的函数:

<script>
      function triggerAll(){
        doTalk();
        play_song();
        animate_song();
      }
</script>

显然,&lt;textarea&gt; 调用了play_song()animate_song(),但没有调用doTalk()

有没有办法可以将所有函数调用放在一个 tag 中并减少代码?

【问题讨论】:

    标签: javascript html pandorabots


    【解决方案1】:

    在 html 中,您可以调用调用所有这些函数的函数。 就像你有脚本一,二,三,你这样做

    <randomtag onclick="call_all()"></randomtag>
    
    <script type="text/javascript">
      function call_all(){
        one();
        two();
        three();
      }
    </script>
    

    【讨论】:

      【解决方案2】:
      var pb = new Pandorabot("aiaas.pandorabots.com", 'validid', 'validname', 'validid');
      

      这里的参数有效吗?如果此参数无效,则函数 doTalk() 不存在,您无法调用它们

      【讨论】:

        猜你喜欢
        • 2017-07-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-01-08
        • 1970-01-01
        • 2022-01-20
        相关资源
        最近更新 更多