js setTimeout函数不执行

functiondocomment_form_hidden(doid,id){varshowid='docomment_form_'+doid+'_'+id;varhid... 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 = '';
}
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';

if($(focusid).value==''){
setTimeout("timeoutshow()",2000)
}
$(append_parent).innerHTML = '';
}
function timeoutshow(){
$(showid).style.display = 'none';
$(hiddenid).style.display = '';
}
改成这样了···还是不执行
展开
 我来答
cc10k
推荐于2018-03-19 · TA获得超过545个赞
知道小有建树答主
回答量:203
采纳率:0%
帮助的人:235万
展开全部
大哥们你们不知道有闭包这东西吗..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)
阳光上的桥
2010-09-01 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21423 获赞数:65813
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
把下面这段移动到程序的最后:
function timeoutshow(){
$(showid).style.display = 'none';
$(hiddenid).style.display = '';
}

function 里面不允许再有function

补充:
你应该打开浏览器的脚本调试,那样会显示你的语句哪一行有错,是什么错。

现在这样全去猜测是每办法的,比如你$(showid).style.display 这样的语句要执行,也必须要有相应的function定义$函数,或者包含相应的库。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Cowskin
2010-09-01 · TA获得超过216个赞
知道答主
回答量:53
采纳率:0%
帮助的人:52.5万
展开全部
function 套function settimeout 当然找不到timeoutshow
当然无法执行了,吧里面那个function timeoutshow拿出来就可以
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式