还是上篇文章的项目。

  现在是屏幕上需要显示九张图表,刚好用一张3X3的表格来显示。但是负责这块内容的同事始终没法让九张图表同时显示,有些图表的位置空了出来。

  大家百思不得其解,最后只得求助技术经理。

  经理过来了一会,发现问题了。

  我们原来的结构是:

       erp.init(..A..); //初始化内容是数据来源,还有图标位置
erp.getData(....); //获取数据,通过ajxa跨域访问接楼获得 erp.init(..B..);
erp.getData(....); erp.init(..C..);
erp.getData(....);

  JS代码当然时从上到下解释,我们理所当然地认为他们会按照顺序一步步来运行、显示,可事实不是这样。在A图表初始化完成在获取数据时,很可能因为网络等问题,没有及时获得内容,程序就先跑到下一行去执行B图标的初始化;B初始化完成时,A图标的数据恰好获取好了,这时的A图表数据就不会放到A初始化时的位置, 而是放到B图表位置去了,A图表的位置就空了出来;这时B图表数据随即获取到,又放到B的位置,这样A表就被覆盖了。这就相当于是刻舟求剑,造成了上面的问题,让大家困惑许久。

  解决方案很简单,就是初始化时不去设置显示的位置,等数据获取到的时候再指定。

JS代码运行延迟的更多相关文章

  1. 试着讲清楚:js代码运行机制

    一. js运行机制 js执行引擎 经常看文章的说到js是带线程的,其实这个说法非常的模糊,准确的是js执行引擎是单线程的,js执行引擎就是js代码的执行器,有了这个概念就可以下来说说js是如何运行的了 ...

  2. 获取js代码运行的时间

    console.time('yue') //代码部分 console.timeEnd('yue')

  3. 爬虫必备:Python 执行 JS 代码 —— PyExecJS、PyV8、Js2Py

    在使用爬虫中,经常会遇到网页请求数据是经过 JS 处理的,特别是模拟登录时可能有加密请求.而目前绝大部分前端 JS 代码都是经过混淆的,可读性极低,想理解代码逻辑需要花费大量时间.这时不要着急使用 S ...

  4. c#: WebBrowser控件注入js代码的三种方案

    聊做备忘. 假设js代码为: string jsCode = @"function showAlert(s) {{ alert('hello, world! ' + s);}}; showA ...

  5. 爬虫之python3用execjs执行JS代码

    JS运行环境 Node.js 是Javascript语言服务器端运行环境 安装和配置:https://www.runoob.com/nodejs/nodejs-install-setup.html 测 ...

  6. 网页中嵌入可以点击“运行代码”执行html/css/js代码

    html代码 <textarea name="textarea" cols="60" rows="10" id="rn01& ...

  7. 添加可运行的js代码

    如何在博客园的文章/随笔中添加可运行的js代码 在博客园浏览大牛们写的文章时,经常会看到在文章中混有一些可运行示例,例如司徒正美的博客中: 带有可运行示例 可以点击“运行代码” 经过一番小小的探索,掌 ...

  8. NET代码运行在服务器JS运行在客户端

    using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Web;usi ...

  9. 几种自己主动运行js代码的方式

    近期在看jquery,发现他竟然能自己主动运行js代码,于是就查了下.收集了几种经常使用的实现方法 jquery的方法 使用场景:不论什么须要运行的js特效 $(document).ready(fun ...

随机推荐

  1. VC++中list::list的使用方法总结

    本文主题 这几天在做图像处理方面的研究,其中有一部分是关于图像分割方面的,图像目标在分割出来之后要做进一步的处理,因此有必要将目标图像的信息保存在一个变量里面,一开始想到的是数组,但是马上就发现使用数 ...

  2. 引用 qsort与sort的比较

    引用 linpder 的 qsort与sort的比较     在C/C++标准库中提供了快速排序的函数qsort():在STL中也提供了sort()排序函数,那么这两个函数哪个快呢?之前与代码-> ...

  3. Java钉钉开发_Exception_异常总结

    一.异常 1.访问ip不在白名单之中 异常信息: "errcode":60020,"errmsg":"访问ip不在白名单之中" 异常背景:若 ...

  4. listen 78

    Struggling Young Readers Like Kindles Kindles, Nooks and other e-readers catch flack for threatening ...

  5. 模拟jQuery的一些功能

    //getStyle function getStyle(obj,attr){ if(obj.currentStyle){ return obj.currentStyle[attr]; } else{ ...

  6. linux 几个逼格高实用的命令

    1.xargs [root@gdpsq1x25 log]# find . -type f -name "*.log" |sort -rn./yum.log./sssd/sssd_s ...

  7. 向nexus远程仓库里面添加JAR

    向nexus远程仓库里面添加JAR 远程仓库:http://10.1.252.21:8081/nexus/index.html admin/admin123 方法一:手动 在左侧选择:Reposito ...

  8. C# FileStream Write追加写入文本

    该例子为追加 C盘中的 file1.txt 的文本内容 完整代码如下: 引入命名空间: [csharp] view plain copy print? using System.IO; 完整代码: [ ...

  9. IOS技能要求

    iOS专业技能: 拥有独立开发iOS APP应用的能力,并且独立开发过多款应用:熟练掌握iOS主流界面布局设计,基本控件和自定义控件的使用,事件处理及事件分发机制:熟练掌握工厂.代理.观察者.单例等多 ...

  10. 条款32:确定你的public继承塑模出is-a的关系

    Make sure public inheritance models "is –a " 如果令clsss D 以public的形式继承class B,你便是告诉编译器说,每一个类 ...