HTML ::在一个标签中调用许多函数

时间:2016-07-05 17:15:39

标签: javascript html pandorabots

我需要帮助来理顺这种混乱局面。以下浏览器聊天代码作为一个整体工作,但它并不整洁。

<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>

这会调用bot 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>

非常<textarea>来电play_song()animate_song(),但不会致电doTalk()

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

2 个答案:

答案 0 :(得分:1)

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

<randomtag onclick="call_all()"></randomtag>

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

答案 1 :(得分:0)

var pb = new Pandorabot("aiaas.pandorabots.com", 'validid', 'validname', 'validid');

这里的参数是有效的吗?如果这些论点不合法,那么函数doTalk()就不存在而且您无法调用它们