求助js延迟顺序执行的问题-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

求助js延迟顺序执行的问题

2016-05-26 15:54:41 2018 2

现在项目中遇到一个问题。就是在前台页面顺序延迟显示后台发送的数据。
比如前台是一个表格,点击前台按钮后,一次获得table上该显示的所有随机序号。
目前的问题不能让这些选择的序号顺序延迟显示。
这个问题类似于在表格中随机点名。
代码不完整:

<table>
   <tr><td>11</td><td>12</td><td>13</td><td>14</td></tr>
   <tr><td>21</td><td>22</td><td>23</td><td>24</td></tr>
   <tr><td>31</td><td>32</td><td>33</td><td>34</td></tr>
   <tr><td>41</td><td>42</td><td>43</td><td>44</td></tr>
</table>
<input type="button" value="顺序延迟加载" id="btnRun" />
<script>
   $(function(){
       $("#btnRun").click(function(){
           // rndArray假如是产生的一个瞬间顺序数组,用来控制表格的td变色
           var rndArray=[3,7,11,1,12,15];
           for(var i=0;i<rndArray.length;i++){
               setTimeout(function(){
                   $("table td").eq(i).addClass("test1").siblings().removeClass("test1");
               },1000);
           }
       })
   });
</script>

今天查阅了一下js是单线程执行的,setTimeout("code()",delay)是在delay后将code插入到代码中。
因此这样肯定无法实现我要的功能。不知道有什么好方法可以实现这个功能,
以前在学习视频的时候看到过这个表格随机点名的效果。
求大神指点该怎么弄。

取消 提交回答
全部回答(2)
  • 茗源
    2019-07-17 19:16:23

    ajax的问题考虑每次请求都带上一个自增的id,setTimeout的问题每次把delay += 500

    0 0
  • 吴孟桥
    2019-07-17 19:16:23

    ajax同步调用,前台等待后台返回,后台线程sleep。这样可以解决

    0 0
添加回答
相关问答

2

回答

怎么让js不顺序执行

2018-05-10 19:59:45 1373浏览量 回答数 2

1

回答

js 怎么顺序执行

2018-05-10 20:00:08 1164浏览量 回答数 1

1

回答

js延迟顺序执行的问题

2016-03-17 10:29:18 1848浏览量 回答数 1

1

回答

Javascript异步请求顺序执行

2016-03-11 18:06:57 1835浏览量 回答数 1

1

回答

JavaScript 怎么删除一个对象的样式中的某个属性?

2016-06-12 15:40:51 2466浏览量 回答数 1

1

回答

JS 中怎么把定义的对象的一个属性作为一个数组

2016-06-02 09:17:49 2477浏览量 回答数 1

1

回答

用JS怎么取到input中由session对象设置的id

2016-06-01 01:09:53 1750浏览量 回答数 1

1

回答

js里Math对象的属性和方法不能遍历,这是怎么回事?

2016-06-01 14:11:04 1739浏览量 回答数 1

1

回答

请问js中怎么判断一个list中包含对象数量?

2016-05-31 17:17:11 6989浏览量 回答数 1

2

回答

请教js内如何使用client.get 函数下载oss对象文件,报错

2016-05-13 16:52:42 4025浏览量 回答数 2
+关注
0
文章
2240
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载