Javascript问题(异步调用)
Issue with Javascript (call asynchronously)
我正在尝试在获取提要之前更改文本
但在我收到提要后,文本发生了变化
问题/答案它只适用于Google Chrome(因为它是一个扩展)
抱歉我英语不好;-)
$("h1").click(function(){$(this).text("正在加载…");//这发生在fids()之后;fids();//获取提要的函数});
最好将fids
更改为异步工作,但如果不能做到这一点,则可以在超时时运行fids
:
$("h1").click(function(){
$(this).text("Loading...");
setTimeout(fids, 0);
});
在JSFiddle上试用
它不能像以前那样工作的原因是,在所有常见的浏览器中,JavaScript都在UI线程上运行。如果您更改文本,然后调用阻塞函数,浏览器会等待JavaScript完成运行,然后再更新UI。在浏览器有时间重新绘制文本后,使用setTimeout
使其在下一个事件循环中运行。
相关文章:
- jasmine 2-在jasmine指定的超时时间内未调用异步回调.DEFAULT_TIMEOUT_INTERVAL
- 递归调用异步函数
- Fine Uploader S3-无处安全调用异步“;setUploadSuccessParams()"
- 调用异步函数的循环
- 从视图调用异步加载模块函数
- 在循环中调用异步函数
- JavaScript ES6 承诺在 while 循环中调用异步操作
- 并行调用异步/等待函数
- 解析云代码:如何调用异步保存的承诺
- 量角器根据条件单击嵌套元素,错误 - 在指定的超时内未调用异步回调
- 反应组件调用了两次(AJAX调用异步)
- 使用 ajax 调用异步 Web api 方法
- NodeJS:调用异步函数时谁做异步工作
- 调用异步函数 befrore 服务器开始侦听
- Node JS 动态集合 ajax 调用异步等待
- 页面重定向后调用异步成功函数
- 如何在调用异步Web服务响应时将值设置为数组
- 如何在node.js可读流中调用异步函数
- 在nodejs中,是否有更好的设计模式来同步调用异步函数
- 同步调用异步 JavaScript 函数