Jquery 未捕获的TypeError:无法读取未定义的属性XXX

Jquery 未捕获的TypeError:无法读取未定义的属性XXX,jquery,angularjs,angularjs-directive,semantic-ui,Jquery,Angularjs,Angularjs Directive,Semantic Ui,当我尝试为我的应用程序提供服务时,在控制台中出现如下错误后,这完全取决于angular animate。如何解决此问题。。? 有人能帮我修一下吗 Uncaught TypeError: Cannot read property 'toFixed' of undefined at HTMLDivElement.onAnimationProgress (angular-animate.js:1324) at HTMLDivElement.dispatch (jquery.js:473

当我尝试为我的应用程序提供服务时,在控制台中出现如下错误后,这完全取决于angular animate。如何解决此问题。。? 有人能帮我修一下吗

Uncaught TypeError: Cannot read property 'toFixed' of undefined
    at HTMLDivElement.onAnimationProgress (angular-animate.js:1324)
    at HTMLDivElement.dispatch (jquery.js:4737)
    at HTMLDivElement.elemData.handle (jquery.js:4549)
    at Object.trigger (jquery.js:7807)
    at jQuery.fn.init.triggerHandler (jquery.js:7881)
    at semantic.min.js:16506
我浏览了angular-animate.js 1324行,并在每次运行时调试了\u time\u MAX\u DECIMAL\u放置这个变量,得到了这个变量的值,但仍然得到了未定义的错误

 var elapsedTime = parseFloat(ev.elapsedTime.toFixed(ELAPSED_TIME_MAX_DECIMAL_PLACES));
这是我做动画的代码

restore: {
             conditions: function() {
               var
                 animation = module.get.currentAnimation();
               if (animation) {
                 $module
                   .removeClass(animation);
                 module.verbose('Removing animation class', module.cache);
               }
               module.remove.duration();
             }
           },

           add: {
             failSafe: function() {
               var
                 duration = module.get.duration();
               module.timer = setTimeout(function() {
                 $module.triggerHandler(animationEnd);
               }, duration + settings.failSafeDelay);
               module.verbose('Adding fail safe timer', module.timer);
             }
           },

           remove: {
             animating: function() {
               $module.removeClass(className.animating);
             },
             animationCallbacks: function() {
               module.remove.queueCallback();
               module.remove.completeCallback();
             },
             queueCallback: function() {
               $module.off('.queue' + eventNamespace);
             },
             completeCallback: function() {
               $module.off('.complete' + eventNamespace);
             },
在这条线上被触发了

$module.triggerHandler(animationEnd)

谢谢,

你可以试试下面的

var elapsedTime = parseFloat(parseFloat( ev.elapsedTime).toFixed(ELAPSED_TIME_MAX_DECIMAL_PLACES));

将变量转换为float以使用toFixed()方法

这里没有答案,只是想缩小范围:唯一使用toFixed的时间(在所有angularJS中)是在这里:因此,首先我要看看您直接使用$animateCss的地方,或者使用css类的地方
ng-
(输入、离开、移动)它在引擎盖下使用$animateCss,并查看传入的值。我不确定是什么导致了这个错误。如果您正在删除某个正在设置动画的元素,可能会这样做?(如果是这样,首先停止动画)执行
console.log(ev.elapsedTime)
以查看
ev.elapsedTime
的值,因为错误状态下它似乎是
未定义的
。当询问由代码引起的问题时,如果您提供人们可以用来重现问题的代码,您将得到更好的答案。该代码应该…完整–提供重现问题所需的所有部分。@Jaccs TransitionEvent/AnimationEvent的IE支持较差。我当然希望(!)这不是浏览器的问题?将jQuery与AngularJS框架混合在一起会让人感到悲伤。而添加语义用户界面可能会让情况变得更糟。我投票结束这个问题作为主题,因为没有明确问题陈述的问题对其他读者没有用处。请参阅:。