わかりましたので、これが私が取り組んでいるものです。これは、影響を受けるテキストエリアのコードです:
<div class="chat">
<div class="messages"></div>
<textarea class="entry" name="entry" placeholder="Welcome to the Chat. Enter your message here!"></textarea>
<script type="text/javascript">
editor = CKEDITOR.replace('entry');
</script>
</div>
これは、チャットのすべての関数を呼び出す chat.js ファイルのコードです。
var chat = {}
chat.fetchMessages = function () {
$.ajax({
url: 'ajaxchat.php',
type: 'post',
data: {
method: 'fetch'
},
success: function (data) {
$('.chat .messages').html(data);
}
});
}
chat.throwMessage = function (message) {
if ($.trim(message).length != 0) {
$.ajax({
url: 'ajaxchat.php',
type: 'post',
data: {
method: 'throw',
message: message
},
success: function (data) {
chat.fetchMessages();
chat.entry.val('');
}
});
}
}
chat.entry = $('.chat .entry');
chat.entry.bind('keydown', function (e) {
if (e.keyCode === 13 && e.shiftKey === false) {
chat.throwMessage($(this).val());
e.preventDefault();
}
});
chat.interval = setInterval(chat.fetchMessages, 5000)
chat.fetchMessages();
現在、このコードはすべて機能していますが、メッセージを送信するためにリターン キーがキャッチされていません。他に何をする必要があるのかわからない。CKeditor は、Enter/Return キーを新しい段落として解釈しており、メッセージ データを送信する必要があります。