我想更改ng-mouse enter事件,所以只有当用户在现场发现超过一秒钟时才会触发该事件
似乎ng-model-options="{ debounce: 1000 }"
不适用于此事件
有什么想法吗?
答案 0 :(得分:2)
<button ng-mouseenter="myEvent()" ng-mouseleave="myEvent2()" > </button>
$scope.flag=false;
$scope.myEvent = function() {
$scope.flag=true;
$timeOut(function(){
if($scope.flag)
{
// do your logic here
}
}, 1000);
}
$scope.myEvent2 = function() {
$scope.flag=false;
}
在这里你可以设置mouseenter
的超时,并通过鼠标离开检查flag
是否为假,这个逻辑只有在用户没有完成时才会执行mouseleave
1 sec
。
答案 1 :(得分:0)
您无法使用ng-model设置事件触发时间。 您只需在事件事件中设置延迟。例如,
<button ng-mouseenter="myEvent()"> </button>
$scope.myEvent = function() {
$timeOut(function(){
// do your function logic here.
}, 1000);
}