You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
2.0 KiB
62 lines
2.0 KiB
$(function () {
|
|
// 点击发送按钮将用户输入的内容显示
|
|
$('#btnSend').on('click', function () {
|
|
// trim方法用来清除字符串中两边的空格
|
|
var text = $('#ipt').val().trim();
|
|
// 判断用户输入的内容是否为空
|
|
if (text.length <= 0) {
|
|
return alert('请输入内容');
|
|
}
|
|
// 将用户输入的内容显示框当中
|
|
$('#talk_list').append('<li class="right_word"><img src="img/person02.png" /> <span>' + text + '</span></li>');
|
|
// 显示完成后需要将滚动条移动到显示框的最下面
|
|
resetui();
|
|
// 清空输入框里面的内容
|
|
$('#ipt').val('');
|
|
// 根据用户输入的内容反馈
|
|
getMsg(text);
|
|
})
|
|
|
|
// 根据用户输入的信息回馈内容
|
|
function getMsg(text) {
|
|
$.ajax({
|
|
method: 'GET',
|
|
url: 'http://www.liulongbin.top:3006/api/robot',
|
|
data: {
|
|
spoken: text
|
|
},
|
|
success: function (res) {
|
|
// 当能够返回数据的时候需要将文字转换为语音
|
|
if (res.message === 'success') {
|
|
var msg = res.data.info.text;
|
|
$('#talk_list').append('<li class="left_word"><img src="img/person01.png" /> <span>' + msg + '</span></li>')
|
|
resetui();
|
|
getVoice(msg);
|
|
}
|
|
}
|
|
})
|
|
}
|
|
|
|
// 将机器人的文字转换为语音
|
|
function getVoice(text) {
|
|
$.ajax({
|
|
method: 'GET',
|
|
url: 'http://www.liulongbin.top:3006/api/synthesize',
|
|
data: {
|
|
text: text
|
|
},
|
|
success: function (res) {
|
|
if (res.status === 200) {
|
|
$('#voice').attr('src', res.voiceUrl);
|
|
}
|
|
}
|
|
})
|
|
}
|
|
|
|
// 绑定一个键盘事件,按回车键输出
|
|
$('#ipt').on('keyup', function (e) {
|
|
if (e.keyCode == 13) {
|
|
$('#btnSend').click();
|
|
}
|
|
})
|
|
}) |