Javascript 在jQuery动画之后绑定角度数据

Javascript 在jQuery动画之后绑定角度数据,javascript,jquery,angularjs,jquery-animate,Javascript,Jquery,Angularjs,Jquery Animate,我正在运行jQuery动画,之后需要更新动画元素中的数据值 由于某种原因,我不能这样做 $scope.myVar = "START"; $("#div").delay(100).animate({ top: '50px' }, { duration: $scope.speed, easing: $scope.ease, complete: function () { $scope.myVar = "FINISHED"; } }); 当记

我正在运行jQuery动画,之后需要更新动画元素中的数据值

由于某种原因,我不能这样做

$scope.myVar = "START";

$("#div").delay(100).animate({
    top: '50px'
}, {
    duration: $scope.speed,
    easing: $scope.ease,
    complete: function () {
        $scope.myVar = "FINISHED";
    }
});
当记录变量时,它会更新;但是,这不会反映在屏幕上。

您需要使用。 从角度文档

$apply()用于从外部以角度执行表达式 角度框架。(例如,从浏览器DOM事件, setTimeout、XHR或第三方库)

您将需要使用。 从角度文档

$apply()用于从外部以角度执行表达式 角度框架。(例如,从浏览器DOM事件, setTimeout、XHR或第三方库)


我通常使用$timeout:

$timeout(function () {
  //$scope.myvar = "FINISHED";
}, 0);

它可以工作,但我不知道它有多优雅…

我通常使用$timeout:

$timeout(function () {
  //$scope.myvar = "FINISHED";
}, 0);
它能工作,但我不知道它有多优雅…

谢谢(非常)快速的回复。这似乎是一个新手问题,希望它能帮助其他人。谢谢(非常)快速的回答。这似乎是一个新手问题,所以希望它能帮助其他人。