Javascript 如何在发出js指令后触发回调

Javascript 如何在发出js指令后触发回调,javascript,angularjs,Javascript,Angularjs,我是Angular JS的新手,我正在尝试在指令完成后如何处理 例如,有一个指令:。如果我想在鼠标移动时更改颜色,请添加ng mousemove=“mouseMoveFunc()”并更改控制器中的相关css属性。但是换回来怎么样?(没有ng mousemoveStop指令) 我已经遇到过几次了,所以我想我缺少了一些关于它应该如何工作的信息。在控制器中,您可以执行以下操作: HTML 在蓝色框上移动鼠标。如果您停止移动或离开箱子,则 颜色恢复到原来的颜色。 Javascript angular

我是Angular JS的新手,我正在尝试在指令完成后如何处理

例如,有一个指令:。如果我想在鼠标移动时更改颜色,请添加
ng mousemove=“mouseMoveFunc()”
并更改控制器中的相关css属性。但是换回来怎么样?(没有ng mousemoveStop指令)


我已经遇到过几次了,所以我想我缺少了一些关于它应该如何工作的信息。

在控制器中,您可以执行以下操作:

HTML


在蓝色框上移动鼠标。如果您停止移动或离开箱子,则
颜色恢复到原来的颜色。
Javascript

angular.module("myApp",[])
.controller("mycontroller",["$scope","$timeout",function($scope, $timeout){
     $scope.mystyle = function(){
         if(queue<1){
             return {"background":"blue"};
         }else{
             return {"background":"black"};
         }
     };
     var queue=0;
     $scope.mouseMoveFunc = function(){
         queue++;
         $timeout(function(){
             queue--;
         },100);
     }
 }]);
angular.module(“myApp”,[])
.controller(“mycontroller”、[“$scope”、“$timeout”、函数($scope、$timeout){
$scope.mystyle=function(){

if(queue)听起来更适合创建自己的指令,这样您也可以
解除绑定
angular.module("myApp",[])
.controller("mycontroller",["$scope","$timeout",function($scope, $timeout){
     $scope.mystyle = function(){
         if(queue<1){
             return {"background":"blue"};
         }else{
             return {"background":"black"};
         }
     };
     var queue=0;
     $scope.mouseMoveFunc = function(){
         queue++;
         $timeout(function(){
             queue--;
         },100);
     }
 }]);