Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/436.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Javascript中创建一个可重用的类型编写器效果函数?_Javascript_Html - Fatal编程技术网

在Javascript中创建一个可重用的类型编写器效果函数?

在Javascript中创建一个可重用的类型编写器效果函数?,javascript,html,Javascript,Html,我知道我在这里需要做什么的基本知识,但我在编码它时遇到了很多问题,所以我想做的就是这样 定义一系列要调用到函数中的字符串,该函数在屏幕上键入字符串,每个字母之间有一个微小的延迟。 我发现了一些人们制作打字机标题卡的例子,但这些卡片并不是设计用来像可以随时调用的函数那样使用的。对于这个特定的项目,我们需要文本像一个临时对话框系统一样工作,直到使用特定的字符串调用该函数时才会调用它。 类似于带有onclick=dialogFunctionidOfStringToBeTyped的按钮 我所拥有的是这样

我知道我在这里需要做什么的基本知识,但我在编码它时遇到了很多问题,所以我想做的就是这样

定义一系列要调用到函数中的字符串,该函数在屏幕上键入字符串,每个字母之间有一个微小的延迟。 我发现了一些人们制作打字机标题卡的例子,但这些卡片并不是设计用来像可以随时调用的函数那样使用的。对于这个特定的项目,我们需要文本像一个临时对话框系统一样工作,直到使用特定的字符串调用该函数时才会调用它。 类似于带有onclick=dialogFunctionidOfStringToBeTyped的按钮 我所拥有的是这样的:

var d1Example = "Hello, I am example dialog";

function dialog(dialogString) {
    var i;
for (i = 0; i <= dialogString.length(); i++) { 
    document.write( dialogString.charAt(i) );
     java.lang.Thread.sleep(50);
}}
因此,我试图编码的内容已经。。。蛮力-y

编辑:要包括我的尝试,首先应该在那里,很抱歉


这在理论上是可行的,但在实践中却一事无成。我可能有语法错误。但我真的不明白为什么这不起作用。

您应该查看JavaScript函数setTimeout和Math.random

可以使用Math.random创建介于0和1之间的浮点整数

var multipule = 5
var rand = Math.random();  // 0.5680401974599227
var randInSeconds = rand * multipule // 2.840200987299614
var waitInSeconds = Math.round(randInSeconds) // 3
然后使用setTimeout方法调用写入每个字符的代码。setTimeout采用两个参数,一个函数和秒数:

var writeCharacter = function(){
  ... 
};

setTimeout(writeCharacter, 300);

我会让你来决定所有的时间安排。

你为什么不包括你的暴力方法?了解你遗漏了什么/做错了什么会有帮助。您是否考虑过在循环中使用Thread.sleepms?您确定您正在编写Java吗?除了字符串示例之外的所有内容看起来都更像JavaScript。欢迎使用StackOverflow。目前看来,您似乎要求我们为您编写缺少的代码,这在这里被认为是离题的。请访问并特别阅读。嗨!我已经更新了帖子,很抱歉。我将来一定会做得更好。我的目的是看看人们会推荐什么方法,而不是要求免费的编码工作。@AuxTaco-同意,但字符串示例看起来真的不像JavaScript。。。