Javascript Jquery未定义函数停止其他操作

Javascript Jquery未定义函数停止其他操作,javascript,jquery,Javascript,Jquery,为什么一个未定义的函数会停止其他操作 var element=$(".case"); element.animate({height:"1000px"},200,function(){ element.removeAttr("style"); callback(); }); 由于callback()是一个未定义的函数,element.removeAttr(“style”)将无法工作。为什么会发生这种情况?只是好奇 否则我将使用 if($.isFunction(callb

为什么一个未定义的函数会停止其他操作

  var element=$(".case");
  element.animate({height:"1000px"},200,function(){
   element.removeAttr("style");
   callback();
  });
由于
callback()
是一个未定义的函数,
element.removeAttr(“style”)
将无法工作。为什么会发生这种情况?只是好奇

否则我将使用

if($.isFunction(callback)){
 callback();
}

是的,如果您是正确的,您必须在调用回调函数之前检查函数, 您应该检查名称是否存在,然后检查它是否是一个函数,如下所示:

if(typeof  callback !== 'undefined' && $.isFunction(callback)){
         callback();
        }

是的,如果您是正确的,您必须在调用回调函数之前检查函数, 您应该检查名称是否存在,然后检查它是否是一个函数,如下所示:

if(typeof  callback !== 'undefined' && $.isFunction(callback)){
         callback();
        }

首先阅读javascript文档,如果存在未定义的操作,为什么不起作用?您在这里讨论的其他操作是什么?一旦调用
callback()
,就无需执行任何操作。此外,这是一个错误,因此执行将停止..当某些内容未定义时,脚本如何执行一行。解析器将检查函数定义,如果未找到任何内容,则会停止执行。您可以使用mozila fire bug来检测未定义的函数异常。您写道:element.removeAttr(“style”)不起作用。但它是有效的。至少在Firefox中对我来说是这样。检查:哪里定义了
callback()
?是否应该将其传递到作为animate的最终参数的函数中?只需首先阅读javascript文档,如果存在未定义的情况,为什么不工作?您在这里讨论的其他操作是什么?一旦调用
callback()
,就无需执行任何操作。此外,这是一个错误,因此执行将停止..当某些内容未定义时,脚本如何执行一行。解析器将检查函数定义,如果未找到任何内容,则会停止执行。您可以使用mozila fire bug来检测未定义的函数异常。您写道:element.removeAttr(“style”)不起作用。但它是有效的。至少在Firefox中对我来说是这样。检查:哪里定义了
callback()
?是否应该将其传递到作为动画的最终参数的函数中?为什么我需要检查名称是否存在?在调用函数之前检查名称是否已定义是很常见的,否则下一部分代码将无法工作,运行代码而不进行任何解释是一个常见的条件。为什么我需要检查名称是否存在?在调用函数之前检查其定义与否是很常见的,否则代码的下一部分将无法工作,运行代码而不进行任何解释是一个常见的条件。