我在 Laravel 应用程序中使用通道的推送器。因此,当我从我的控制器触发一个事件时,我的客户端会收到这个事件,并使用推送器功能在我的首页上添加一些带有此 lib https://github.com/albburtsev/jquery.typist的文本:
channel.bind('App\\Events\\TextAdded', function(data) {
if(data.txt){
printPhrase(data.txt);
i++;
}
});
function printPhrase(txt) {
$('<span>')
.addClass('txt_' + i)
.appendTo('.typist_dialog')
.typist({
text:txt,
speed: 15,
}).on('end_type.typist', function() {
console.log('end') ;
}).typistStop() ;
}
});
如您所见,我可以捕获事件“end_type”(当函数停止写入时)。
问题是我不能 - 或者我不知道如何 - 将“channel.bind”放在队列中,所以等到printPhrase(txt)
完成......所以不要在屏幕上显示超过一个打印时间......