0

ユーザーがメッセージを入力すると、いくつかの要素が作成され、「ロボット」チャット メッセージの下に配置される投稿システムを作成しています。ユーザーが 2 つの異なるメッセージを入力すると、最新の入力メッセージが他のユーザー メッセージの上に表示されます。時系列で上から順に並べてほしい。

これはうまくいかないようです: (if/else 部分)

function submitUserMessage(){

    var message = document.getElementById("user-input");

    if(message.value){

        // YOU
        var you = document.createElement("h4");
        var youText = document.createTextNode("You");
        you.appendChild(youText);
        you.className = "ytitle";
        document.body.appendChild(you);
        insertAfter(robotSays, you);

        // User's message
        var userMessage = document.createElement("span");
        var userMessageText = document.createTextNode(message.value);
        userMessage.appendChild(userMessageText);
        userMessage.className = "umsg";
        document.body.appendChild(userMessage);
        insertAfter(you, userMessage);
    } else if(userMessage){
        userMessage.nextSibling.insertAfter(this);
    }
}  

これが私の投稿システムのフィドルです:: http://jsfiddle.net/MatthewKosloski/YWWMW/

(Enter キーを使用して送信します)

4

1 に答える 1

1
var userMessage = robotSays;

function submitUserMessage(){

    var message = document.getElementById("user-input");

    if(message.value){

        // YOU
        var you = document.createElement("h4");
        var youText = document.createTextNode("You");
        you.appendChild(youText);
        you.className = "ytitle";
        document.body.appendChild(you);
        insertAfter(userMessage, you);

        // User's message
        userMessage = document.createElement("span");
        var userMessageText = document.createTextNode(message.value);
        userMessage.appendChild(userMessageText);
        userMessage.className = "umsg";
        document.body.appendChild(userMessage);
        insertAfter(you, userMessage);
    }
}
于 2013-07-21T04:45:00.390 に答える