1. js中 setTimeout用了之后如何没效果
js 中 setTimeout 用了之后怎么没效果 function over(param){ param1 = { id:param.id, datadate:jQuery('#statMonthDate').val() }; disposeCharts(); jQuery('#chartd').css({left:event.clientX+50,top:event.clientY-200}); setTimeout(buildGraph(param1), 5000); jQuery('#chartd').show(); jQuery('#char2d').show(); } 我想让 onmouseover 时间 buildGraph(param1)方法等待 5 秒再执行 为什么没效果 立即就执行了 ------最佳解决方案-------------------------------------------------------- setTimeout(function(){ buildGraph(param1); }, 5000); ------其他解决方案-------------------------------------------------------- setTimeout(function(){ alert('111'); }, 5000); LZ,你可以自己先试试这样是否可以 5 秒之后弹出,可以的话, 在修改成自己调用的 function 方法名! ------其他解决方案-------------------------------------------------------- setTimeout('buildGraph('+param1+')', 5000); 试试看 ------其他解决方案-------------------------------------------------------- 引用: setTimeout('buildGraph('+param1+')', 5000); 试试看 引用: setTimeout(function(){ buildGraph(param1); }, 5000); 引用: setTimeout(function(){ alert('111'); }, 5000); LZ,你可以自己先试试这样是否可以 5 秒之后弹出,可以的话, 在修改成自己调用的 function 方法名!
2. js setTimeout函数不执行
大哥们你们不知道有闭包这东西吗..function 内是可以有function的
function docomment_form_hidden(doid, id) {
var showid = 'docomment_form_'+doid+'_'+id;
var hiddenid = 'docomment_form_show_'+doid+'_0';
var focusid = 'do_message_'+doid+'_'+id;
var append_parent = 'append_parent';
function timeoutshow(){
$(showid).style.display = 'none';
$(hiddenid).style.display = '';
}
setTimeout("timeoutshow();",2000)
$(append_parent).innerHTML = '';
}
在这里你运行不了是因为setTimeout("timeoutshow();",2000)这句话的根对象是window,编译器会自动去全局变量里查timeoutshow()函数,当然是没有的,正确写法是setTimeout(timeoutshow,2000)
3. js延时器setTimeout(,)把第一个参数直接设置为一段函数,第二个参数就不管用了(不能延时)
这样写:
setTimeout(fun,500,a, b, c);
参数放在后面