Jquery 未捕获的TypeError:无法读取未定义的属性XXX
当我尝试为我的应用程序提供服务时,在控制台中出现如下错误后,这完全取决于angular animate。如何解决此问题。。? 有人能帮我修一下吗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
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框架混合在一起会让人感到悲伤。而添加语义用户界面可能会让情况变得更糟。我投票结束这个问题作为主题,因为没有明确问题陈述的问题对其他读者没有用处。请参阅:。