angularjs - 如何使用 AngularJS 更改一个 div 上的类,同时将鼠标悬停在另一个 div 上?

标签 angularjs angularjs-directive

我想使用 AngularJS 指令更改一个 div 的类,同时将鼠标悬停在另一个 div 上。这是我到目前为止所拥有的http://jsfiddle.net/E8nM5/38/

HMTL

<div ng-controller="Ctrl" ng-app>
   <div ng-class="my-class">This div will change class when one hovers over bottom DIV </div>
   <br/>
   <div class="hover-div" ng-mouseenter="my-class = 'highlight'" ng-mouseleave="my-class = 'lowlight'">HOVER OVER ME TO CHANGE THE UPPER DIV's CLASS</div>    
</div>

CSS

div.highlight {
    padding: 10px;
    background: red;
    color: white;
}

div.lowlight {
    padding: 10px;
    background: blue;
    color: white;
}

div.hover-div {
    padding: 10px;
    background: green;
    color: white;
}

JS

function Ctrl($scope){
}

有什么想法吗?

最佳答案

my-class 更改为 myclass (即破折号会导致问题)。

<div ng-controller="Ctrl" ng-app>
    <div ng-class="myclass">This div will change class when one hovers over bottom DIV </div>
    <br/>
    <div class="hover-div" ng-mouseenter="myclass = 'highlight'" ng-mouseleave="myclass = 'lowlight'">HOVER OVER ME TO CHANGE THE UPPER DIV's CLASS</div>    
</div>

更新: 表达式中不允许使用 my-class 的原因是 AngularJS 将破折号视为减号并尝试以这种方式解析它。显然,它无法解析语句 my - class = 'highlight'。不幸的是,在阅读 AngularJS 解析器代码后,我找不到一种方法来“帮助”它区分破折号和减号。

关于angularjs - 如何使用 AngularJS 更改一个 div 上的类,同时将鼠标悬停在另一个 div 上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18390473/

相关文章:

javascript - 指令中的 ng-click 不起作用

AngularJS - 使用 Angular UI Bootstrap 理解指令中的模板

javascript - 当有表情符号时设置无效输入

javascript - Restangular:WAITING promise 的解决?

javascript - Angular1/JavaScript - 改进算法条件

javascript - 如何绘制路径为 "d"属性的菱形?

javascript - 带有动态列的 Angular 过滤表 ng-model 未设置

javascript - Angularjs 1.2.6 : watch directive's parent scope collection

javascript - 如何防止 Angular 指令规范化?

javascript - 如何使用angularjs在visjs中添加放大缩小按钮?