【发布时间】:2011-03-25 02:12:42
【问题描述】:
变量检查; 函数显示加载器(){ $('#mc_signup_form').prepend('正在加载...'); check_init(); }
function check_init() {
check = setInterval('check_trigger()', 300);
}
function check_clear() {
clearInterval(check);
}
function check_trigger() {
if ( $('.mc_error_msg').length == 0 || $('.mc_success_msg').length == 0 ) {
$('#mc_signup_form .loading').remove();
check_clear();
}
}
我想知道为什么我的浏览器一直告诉我 check_trigger() 不存在? 我正在我的 showLoader() 函数内部启动一个 setInterval。它应该触发 check_trigger。当两个 div 之一(.mc_error_msg 或 .mc_success_msg)存在时,我想清除间隔。
我做错了什么?
【问题讨论】:
-
你试过把 check_trigger() 放在 check_init() 上面吗?
-
@mathiregister,代码的范围是什么?因为 setInterval() 将在“window”/全局对象下运行,它可能找不到 check_trigger()。
标签: javascript jquery setinterval