baozhengrui

导航

逐字显示文字

for (let i = 0; i <= res.data.data.length; i++) {
                                                            setTimeout(() => {
            this.report = res.data.data.slice(0, i);
        }, 10);
    }

如果换行不显示则在此div的css中加入white-space: pre-wrap;



第二种方法
 var rep = res.data.data;
let chat = document.getElementById("sport-content");
chat.scrollTop = chat.scrollHeight;

// 设置初始文本
 this.report = '';

  // 生成随机延迟时间
  function getRandomDelay(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
  }

  // 逐字显示函数
  function typeText(text, index) {
    if (index < text.length) {
      // 在报告中追加一个字符
      this.report += text.charAt(index);
      chat.scrollTop = chat.scrollHeight; // 滚动到底部
      // 递归调用,显示下一个字符,延迟时间随机
      setTimeout(() => typeText.call(this, text, index + 1), getRandomDelay(20, 40));
    }
  }

  // 开始逐字显示
  typeText.call(this, rep, 0);

  console.log('getset', this.report);

posted on 2024-07-17 16:09  芮艺  阅读(5)  评论(0编辑  收藏  举报