当前位置:  开发笔记 > 编程语言 > 正文

与ngMouseover辩论

如何解决《与ngMouseover辩论》经验,为你挑选了1个好方法。

我有这个HTML div,它使用该ngMouseover指令通过函数从api获取一些数据,如下所示:

标记:

控制器:

$scope.getData = function() {
    //get data from api
}

有没有什么方法可以在ngMouseover指令中添加延迟,这样只有在光标在div上停留几秒后才会触发它?就像它debounce在里面一样ngModelOptions.



1> floribon..:

您可以使用组合的onmouseenteronmouseleave:如果鼠标进入元素和不留至少2秒,然后评估.

该指令debounceMouseover是:

template: "
", link: function(scope, elem, attrs) { var stayAtLeast = attrs.stayAtLeast; var timer; scope.onEnter = function() { timer = $timeout(function() { scope.$eval(attrs.debounceMouseover); }, stayAtLeast); }; scope.onLeave = function() { $timeout.cancel(timer); }; }

(这是一般的想法,实际的实施留给你,如果你需要帮助,请告诉我)

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有