1

我有以下指令

courseApp.directive("courseoverview", function() { 
    function link(scope, element, attrs) {
        scope.switched = false;
        //hover handler
        scope.hoverItem = function(hovered){
        if (hovered) {
            //element.addClass('hover');
            $('#course-'+ scope.$index  +' figure').addClass('tint');
            //console.log(scope.$index);
        }
        else
            //element.removeClass('hover');
            $('#course-'+ scope.$index  +' figure').removeClass('tint');
        };
    }  
    return {    
      restrict : 'A',    
      replace: true,   
      transclude: true,    
      templateUrl: "views/course-overview.html",
      link: link
   }});

使用以下代码调用该指令

<li data-ng-repeat="item in social" class="social-{{item.name}}" 
                ng-mouseover="hoverItem(true);"
                ng-mouseout="hoverItem(false);"
                current-social="{{item.name}}">

悬停功能很好用,但我需要在指令中访问这个属性,我需要它的值。

关于如何实现这一目标的任何想法都会很棒。

4

1 回答 1

1

首先,您的指令名为“courseoverview”,但我在您提供的标记中的任何地方都看不到该属性。

为了解决您的问题,您说我需要在指令中访问此属性。但我认为您在链接功能中有属性 - 请参阅attrs参数。这些是触发指令的元素上的属性。

 function link(scope, element, attrs) { ... } 

有关更多信息,请参阅此答案

于 2013-06-26T14:43:54.363 回答