如果单击并按住按钮,如何使用角度反复激活鼠标单击按钮?

时间:2014-04-08 11:47:11

标签: javascript jquery angularjs

    <button type="button" class="btn btn-default"
            ng-click="rotate(true)">
        <i class="fa fa-sort-asc" style="color:blue"></i>
    </button>

如果在500毫秒的间隔之后反复调用我的控制器中的旋转功能,直到用户点击并按住按钮?

1 个答案:

答案 0 :(得分:0)

结合使用ng-mousedown和ng-mouseup directie interval服务,您可以创建此功能。

<button type="button" class="btn btn-default"
        ng-mousedown="startRotate(true)" ng-mouseup="endRotate()" ng-mouseleave="endRotate()" >
    <i class="fa fa-sort-asc" style="color:blue"></i>
</button>
在startrotate函数中创建一个每x次调用一次旋转函数的间隔。在endRotate中,您可以在start函数中创建的时间间隔内调用cancel函数。

编辑:您还需要ng-mouseleave,因为如果在鼠标按钮关闭时将鼠标从按钮上移开,则永远不会注册ng-mouseup。

文档:

http://docs.angularjs.org/api/ng/directive/ngMousedown

http://docs.angularjs.org/api/ng/directive/ngMouseup

http://docs.angularjs.org/api/ng/service/ $间隔