关于alert后,才能继续执行后续代码问题
如果在正常情况下,代码要在alert之后才执行,解决办法:将要执行的代码用setTimeout延迟执行即可(原因:页面未加载完毕)
首先,先说明问题情况:
如下JS代码,不能正常执行,只有在最前面加上alert("")后才能执行,
其实是DOM渲染时间太长,alert起到了延时作用,所以alert后才能看到代码执行效果
原始代码:
<script type="text/javascript">
var ctx='${ctx}'+'/static/js/';
var files = [];
var errors = [];
var type = 'file';
var max_file_size = '10mb';
var filters = {title : "文档", extensions : "xml"};
$("#uploader").pluploadQueue($.extend({
runtimes : 'flash,html4',
url : 'localUpLoadProgram',
max_file_size : max_file_size,
file_data_name:'file',
unique_names:true,
filters : [filters],
flash_swf_url : ctx+'plupload/plupload.flash.swf',
init:{
FileUploaded:function(uploader,file,response){
if(response.response){
var rs = $.parseJSON(response.response);
if(rs.status){
files.push(file.name);
}else{
errors.push(file.name);
}
}
},
UploadComplete:function(uploader,fs){
//var e= errors.length ? ",失败"+errors.length+"个("+errors.join("、")+")。" : "。";
// alert("上传完成!共"+fs.length+"个。成功"+files.length+e);
}
}
},(true ? {chunk_size:'1mb'} : {})));
</script>
解决后代码:
延时执行该函数,就ok了,就达到了alert延时的效果了
<script type="text/javascript">
setTimeout(loaderLocal,1);
function loaderLocal(){
var ctx='${ctx}'+'/static/js/';
var files = [];
var errors = [];
var type = 'file';
var max_file_size = '10mb';
var filters = {title : "文档", extensions : "xml"};
$("#uploader").pluploadQueue($.extend({
runtimes : 'flash,html4',
url : 'localUpLoadProgram',
max_file_size : max_file_size,
file_data_name:'file',
unique_names:true,
filters : [filters],
flash_swf_url : ctx+'plupload/plupload.flash.swf',
init:{
FileUploaded:function(uploader,file,response){
if(response.response){
var rs = $.parseJSON(response.response);
if(rs.status){
files.push(file.name);
}else{
errors.push(file.name);
}
}
},
UploadComplete:function(uploader,fs){
//var e= errors.length ? ",失败"+errors.length+"个("+errors.join("、")+")。" : "。";
// alert("上传完成!共"+fs.length+"个。成功"+files.length+e);
}
}
},(true ? {chunk_size:'1mb'} : {})));
}
</script>
关于alert后,才能继续执行后续代码问题的更多相关文章
- 常量和静态变量会先载入内存后在进行执行php代码
static $test=1;//在php执行前就已经写入内存$test++;var_dump($test);static $test=10;//在php执行前就已经写入内存var_dump($tes ...
- python入门:BREAK 的用法 跳当前循环后,不再执行下面代码块
#!/urs/bin/env python # -*- coding:utf-8 -*- # BREAK 的作用 跳当前循环后,不再执行下面代码块 while True: ') break ') #w ...
- js 加alert后才能执行方法
原因是:访问页面时,某些js方法还没初始化(或者还没有加载出来)此时调用肯定不执行.alert起到了延迟的功能,当用户点击确定此时要执行的js恰好初始化完成,能正常执行. 解决方法是 加setTime ...
- 在css加载完毕后执行后续代码
最近在写项目的framework,写个JQueryMessageBox的类,以使用jquery ui中的dialog()来显示消息框,为了使方法方便调用,便加入了自动判断页面是否加入了ui.js和ui ...
- delphi 中使用WaitForMultipleObjects等待线程执行,再执行后续代码
unit1 [delphi] view plain copyunit Unit1; interface uses Windows, Messages, SysUtils, Variants, Clas ...
- ajax执行完成后,再执行下面的代码的解决办法
一般ajax设置的都是异步的,但是有时候我们有这种需求,就是等ajax执行完成之后,在执行下面的函数. 1设置async:false 在jq中直接设置了ajax是异步的还是同步的 一般如果不写这个,默 ...
- 解决Button设置disabled后无法执行后台代码问题
一.开始调式下面的程序,发现Button在js中设置disabled后无法执行后台代码(btnsave_Click)问题 <asp:Button ID="btnsave" r ...
- 异常依然执行{try..catch语句块..}的后续代码
测试异常依然执行{try..catch语句块..}的后续代码: private static Integer testThrows() throws Exception{ Integer result ...
- main函数执行前、后再执行的代码
一.main结束 不代表整个进程结束 (1)全局对象的构造函数会在main 函数之前执行, 全局对象的析构函数会在main函数之后执行: 用atexit注册的函数 ...
随机推荐
- css-知识总结
是什么 CSS通常称为CSS样式或层叠样式表,主要用于设置HTML页面中的文本内容(字体,大小,对其方式等),图片的外形 (高宽.边框样式.边距等)以及版面的布局等外观显示样式. CSS可以是HTML ...
- java中如何遍历实体类的属性和数据类型以及属性值
package com.walkerjava.test; import java.lang.reflect.Field; import java.lang.reflect.InvocationTa ...
- IO流之IO的异常处理
如果发生了IO的异常.我们在实际开发中,对异常时如何处理的,我们来演示一下. public class FileOutputStreamDemo3 { public static void main( ...
- jQuery二——属性操作、文档操作、位置属性
一.jquery的属性操作 jquery对象有它自己的属性和方法. 其中jquery的属性操作模块分为四个部分:html属性操作,dom属性操作,类样式操作和值操作. 1.html属性操作 是对htm ...
- 用JQ帮你实现动画导航 手风琴是导航与下拉导航
1.手风琴式导航,既可以适用于移动端也可使用与PC端 <!DOCTYPE html> <html> <head> <meta charset="UT ...
- Eclipse集成Maven(手工安装Maven且手工集成到Eclipse)
1.操作环境 操作系统:win8 64位 IDE:Helios Eclipse 1.8 JDK:1.6 2.资源准备 2.1 maven安装包: apache-maven-3.2.5-bin.zip ...
- March 29 2017 Week 13 Wednesday
It's during our darkest moments that we must focus to see the light. 在最黑暗的时刻,最该努力看到光. I always thoug ...
- SQL-MySQL使用教程-对MySQL的初步尝试
出现问题:中文无法显示.存储:不对任何数据做检测,只管理数据类型.
- HDU 5675 智慧数
题意:给一个n ,能否找到正整数x,y使得 x^2 -y^2 = n: 分析:打表可以找出规律,3,5,7,9....,8,12,16,20..... 和奇数,4的倍数有关. 数学证明:
- 「Luogu-U18201」分析矿洞
题目 没有看懂题目呢说的是什么,但是我们要求的是这个式子 \[Ans=\sum_{i=1}^n\sum_{j=1}^n\varphi(gcd^2(i,j))\] 看起来挺鬼畜的是吧 老方法枚举\(gc ...