Javascript 更具逻辑性的setTimeout例程
我创建了一个简单的随读功能,在特定时间突出显示单词。到目前为止,我就是这样做的:Javascript 更具逻辑性的setTimeout例程,javascript,timeout,Javascript,Timeout,我创建了一个简单的随读功能,在特定时间突出显示单词。到目前为止,我就是这样做的: setTimeout(function(){ $(".page3 > p >*:contains('The')").css('background',textColor) }, 400); setTimeout(function(){ $('.word').css('back
setTimeout(function(){
$(".page3 > p >*:contains('The')").css('background',textColor)
}, 400);
setTimeout(function(){
$('.word').css('background',transparent)
$(".page3 > p >*:contains('dog')").css('background',textColor)
}, 1000);
setTimeout(function(){
$('.word').css('background',transparent)
$(".page3 > p >*:contains('was')").css('background',textColor)
}, 1700);
我的问题是,他们这样做会更好吗?
我不能使用循环,因为每个单词和是不同的,单词的时间也非常不同
编辑:我曾考虑过使用数组。键可以是单词,值可以是时间(ms)。我只是不知道我怎么能做到?它需要某种形式的循环吗?这是一个JSFIDLE 基本上,它可以通过在函数中实现setTimeout来解决,因此您不必总是反复编写相同的函数
我个人建议向某些对象添加类,并将此类用于css。jquery css不是我的最爱:)你有JSFIDDLE吗?我没有。你有什么需要我更详细地解释的吗?你的代码有效吗?如果可以的话,我们可以看看。我想用空格分割字符串,但我不知道你做了什么你可以稍微简化一下,但不能太多。我会把重复的部分变成独立的函数,也许会把浮动函数压缩成对象成员,但是你仍然需要每个规范的function(){}开销和setTimeout interval。它确实可以工作,但它是一个庞大的项目(JS中大约有3000行代码),所以很难分离出来,放到JS中。基本上,页面上的每个单词都是不同的跨度,每个单词都有“word”类。这些超时只需点击一个按钮,单词就会开始高亮显示。(因此我使用“contains”来定位每个单词)。如果你需要更多细节,请告诉我
changeWord('Lorem','text',1000);