结合使用setTimeout和Canvas从数组中打印文本

肌酸

美好的一天,程序员:

我正在寻找从数组中将一系列字符串打印到画布上的方法。目前,它不清除画布所有打印在单次迭代的文本。

var test1 = ["This","is","a","test","to","see","if","it","really","works"];

function printWord(i){
    setTimeout( function(){ ctx.fillText(test1[i], 150, 90) }, 1000 ) }

function clearScreen(){
    ctx.clearRect(0, 0, 300, 100);
}

function playText(){
    for(var i = 0; i < test1.length; i++){
        clearScreen;
        printWord(i);
    };
}
playText();

这是JSFiddle更新了链接,感谢Bigood固定了时间。仍然需要清除画布的帮助。

谢谢,

有限责任公司

加里·史蒂文斯(Gary Stevens)

您的问题是您的循环一次调用了所有这些超时,而没有延迟调用。相反,您需要一个时间间隔,然后在完成数组操作后将其清除(我从中得到了一些启发:setTimeout位于for loop内)。这是一个修改后的示例,使用与我发布的链接相同的方法:

var test1 = ["This","is","a","test","to","see","if","it","really","works."];

var c = document.getElementById("screen"); //Setup screen.
var ctx = c.getContext("2d");   
ctx.font = "normal 42px Arial";
ctx.textAlign= "center";
var i = 0;

function clearScreen(){
    ctx.clearRect(0, 0, 300, 100);
}

var timer = setInterval(function(){
    clearScreen();
    ctx.fillText(test1[i], 150, 91);
    i++; 
    if(i >= test1.length) {
        clearInterval(timer);
    }
}, 200);

timer();

这是工作中的JSFiddle的链接

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

结合UITextView中的文本和图像

来自分类Dev

使用sed打印和替换ps命令输出中的文本

来自分类Dev

如何使用Twig从数组中检索和打印值?

来自分类Dev

使用setTimeout和setTimeout对数组进行无限次迭代

来自分类Dev

结合使用numba-pro和python的CUDA内核中的数组

来自分类Dev

在PHP中结合键数组和值数组

来自分类Dev

在awk中在“ <”和“>”之间打印文本

来自分类Dev

在熊猫中结合使用遮罩和索引

来自分类Dev

结合使用xargs参数和一些文本

来自分类Dev

如何使用fgets从文本文件打印到2D数组中?

来自分类Dev

如何使用bash脚本在数组数组中打印键和值

来自分类Dev

如何使用bash脚本在数组数组中打印键和值

来自分类Dev

使用状态和 setTimeOut 使用 React 闪烁文本

来自分类Dev

如何在bash打印中打印粗体和大号文本

来自分类Dev

结合DataTables中的aoData数组和序列化形式

来自分类Dev

在PHP中结合每月日期和总和的数组

来自分类Dev

结合使用NSPredicate和嵌套数组iOS

来自分类Dev

结合使用grep命令和单词数组

来自分类Dev

结合了文本和图像的UITextView

来自分类Dev

Javascript:使用map在数组中的每个对象中打印属性“名称”和“值”

来自分类Dev

使用jQuery在文本框中打印计数和所选选项的值

来自分类Dev

如何在Linux / Unix Terminal中启动和停止使用特定文本打印行

来自分类Dev

使用jQuery在文本框中打印计数和所选选项的值

来自分类Dev

使用流计算和打印文本中的字符频率,没有映射,没有键值对

来自分类Dev

如何在不使用循环和递归的情况下在Java中打印数组

来自分类Dev

使用Ajax和onsubmitForm时,Foreach仅从数组中打印一个值

来自分类Dev

在不使用数组的情况下打印C中相邻的整数和序列

来自分类Dev

遍历jquery中的数组并打印li元素的文本

来自分类Dev

遍历jquery中的数组并打印li元素的文本

Related 相关文章

  1. 1

    结合UITextView中的文本和图像

  2. 2

    使用sed打印和替换ps命令输出中的文本

  3. 3

    如何使用Twig从数组中检索和打印值?

  4. 4

    使用setTimeout和setTimeout对数组进行无限次迭代

  5. 5

    结合使用numba-pro和python的CUDA内核中的数组

  6. 6

    在PHP中结合键数组和值数组

  7. 7

    在awk中在“ <”和“>”之间打印文本

  8. 8

    在熊猫中结合使用遮罩和索引

  9. 9

    结合使用xargs参数和一些文本

  10. 10

    如何使用fgets从文本文件打印到2D数组中?

  11. 11

    如何使用bash脚本在数组数组中打印键和值

  12. 12

    如何使用bash脚本在数组数组中打印键和值

  13. 13

    使用状态和 setTimeOut 使用 React 闪烁文本

  14. 14

    如何在bash打印中打印粗体和大号文本

  15. 15

    结合DataTables中的aoData数组和序列化形式

  16. 16

    在PHP中结合每月日期和总和的数组

  17. 17

    结合使用NSPredicate和嵌套数组iOS

  18. 18

    结合使用grep命令和单词数组

  19. 19

    结合了文本和图像的UITextView

  20. 20

    Javascript:使用map在数组中的每个对象中打印属性“名称”和“值”

  21. 21

    使用jQuery在文本框中打印计数和所选选项的值

  22. 22

    如何在Linux / Unix Terminal中启动和停止使用特定文本打印行

  23. 23

    使用jQuery在文本框中打印计数和所选选项的值

  24. 24

    使用流计算和打印文本中的字符频率,没有映射,没有键值对

  25. 25

    如何在不使用循环和递归的情况下在Java中打印数组

  26. 26

    使用Ajax和onsubmitForm时,Foreach仅从数组中打印一个值

  27. 27

    在不使用数组的情况下打印C中相邻的整数和序列

  28. 28

    遍历jquery中的数组并打印li元素的文本

  29. 29

    遍历jquery中的数组并打印li元素的文本

热门标签

归档