首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模拟鼠标的角度指令?

模拟鼠标的角度指令?
EN

Stack Overflow用户
提问于 2014-12-05 15:26:02
回答 1查看 383关注 0票数 0

有用于模拟鼠标中心事件的指令吗?

我尝试过寻找一个,但我所找到的只是一个指令,它将一个函数绑定到鼠标上方,或者业力测试用于模拟鼠标以上。

我的用例是,我已经准备好将一个事件绑定到鼠标上,但我正在寻找一个simulate-mouse ="shouldBeMouseOver"形式的指令,以便当$scope.shouldBeMouseOver为真时,我将该指令放在响应上,就像它有mouseenter事件一样。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-05 16:18:09

UPTATE!以前的解决方案是一个解决方案。您现在可以使用一个角指令(https://docs.angularjs.org/api/ng/directive/ngMouseenter)。

代码语言:javascript
复制
ng-mouseenter="handler()"

以前的解决方案(解决方案)

HTML:

代码语言:javascript
复制
    <div simulate-mouse eventhandle="objfromscope">Hover</div> <!-- objfromscope: true or false -->
   <div ng-click="objfromscope=!objfromscope">Enable/Disable hover</div>

指令

代码语言:javascript
复制
app.directive('simulateMouse', function() {
    return {
        restrict: 'AE',
        scope: {
            eventhandle : '=eventhandle' //eventhandle is two way data binded
        },
        link: function(scope, element, attrs) {
            
            scope.$watch(function() {
                    return scope.eventhandle;
                }, function(newValue) {
                    console.log(newValue)
                  if(newValue){
                     element.off("mouseenter").on("mouseenter",function(){
                           onMouseOverCall()
                        });
                }else{
                    element.off("mouseenter");
                }

                });
           
           var onMouseOverCall = function(){ /* called only when eventhandle is true */
               console.log("hoho") 
           }
        }
    };
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27319228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档