さて、チャットボットを作っているのですが、問題が発生しました。そのため、Enter キーが押されるたびにチャット メッセージを作成する関数を作成する必要があります。これまでのところ、問題は 1 つだけですが、順調に進んでいます。要素を複製していますが、そのうちの 1 つだけが必要です。
私が話していることを確認するには、http://jsfiddle.net/MatthewKosloski/BHXMa/にアクセスしてメッセージを入力し、Enter キーを押します。「Foo!」が 2 つあることに注意してください。メッセージ?1つだけ欲しい。また、これらのメッセージを時系列で上から下に並べたいと思いますが、この重複が発生している理由を突き止めるまで、それはできません!
function insertAfter(referenceNode, newNode) {
referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
}
var robotMessage = userMessage;
function intelResponse(){
// ROBOT
var robot = document.createElement("h4");
var robotText = document.createTextNode("Robot");
robot.appendChild(robotText);
robot.className = "rtitle";
document.body.appendChild(robot);
insertAfter(userMessage, robot);
// Robot's response
robotMessage = document.createElement("span");
var robotMessageText = document.createTextNode("FOO");
robotMessage.appendChild(robotMessageText);
robotMessage.className = "rmsg";
document.body.appendChild(robotMessage);
insertAfter(robot, robotMessage);
}