使用Angular通过鼠标悬停更改颜色
Getting change color with mouse hover to work using Angular
http://codepen.io/Feners4/pen/KggAwg
我想用Angular鼠标悬停来改变立方体的颜色。我设法使它在立方体的一侧起作用,但我希望这种效果能改变整个立方体的颜色。
这是我的HTML:
<header>
Angularity
</header>
<h1>hjskl</hi>
<body>
<div class="container" ng-controller="AppCtrl">
</div>
</header>
<div class="wrap">
<div ng-app="App" class="cube"change-background colorcode=¨#FE0883¨>
<div class="front">AAA</div>
<div class="back"></div>
<div class="top"></div>
<div class="bottom"></div>
<div class="left"></div>
<div class="right"></div>
</div>
</div>
</header>
<div class="wrap2">
<div class="cube2">
<div ng-app="App" class="front2" change-background colorcode=¨#FE0883¨>AAA</div>
<div class="back2"></div>
<div class="top2"></div>
<div class="bottom2"></div>
<div class="left2"></div>
<div class="right2"></div>
</div>
</div>
我的JS:
angular.module('App', [])
.directive('changeBackground', ['$animate', function($animate) {
return {
restrict: 'EA',
scope: {
colorcode: '@?'
},
link: function($scope, element, attr) {
element.on('mouseenter', function() {
element.addClass('change-color');
element.css('background-color', $scope.colorcode);
});
element.on('mouseleave', function() {
element.removeClass('change-color');
element.css('background-color', '#fff');
});
}
};
}])
我如何让立方体在鼠标悬停时更改颜色,当鼠标离开时,它又变回来?
这里的主要问题之一是如何定义ng-app
,正如我在评论中所说,它定义了Angular要使用的应用程序的根。将其放置在这样一个特定的位置将意味着没有其他元素连接到Angular。需要做的第一件事是,您的HTML应该被清理,有重复的关闭header
标记,没有打开,也没有关闭body
。由于你从未定义过控制器,而且它没有被使用,我删除了它(否则它会抛出错误(之后,你可以在body
上定义你的ng-app
,这将允许在任何元素上使用你的指令:
<html>
<header>
Angularity
</header>
<h1>hjskl</hi>
<body ng-app="App">
<div class="wrap">
<div class="cube"change-background colorcode=¨#FE0883¨>
<div class="front">AAA</div>
<div class="back"></div>
<div class="top"></div>
<div class="bottom"></div>
<div class="left"></div>
<div class="right"></div>
</div>
</div>
<div class="wrap2">
<div class="cube2">
<div class="front2" change-background colorcode=¨#FE0883¨>AAA</div>
<div class="back2" change-background ></div>
<div class="top2" change-background></div>
<div class="bottom2" change-background></div>
<div class="left2" change-background></div>
<div class="right2" change-background></div>
</div>
</div>
</body>
</html>
相关文章:
- DT数据表背景颜色为黑色,但仍有悬停和选择颜色
- 在 ul 下更改内容的字体颜色,在悬停时
- 如何在悬停时更改SVG图像的颜色
- 悬停时颜色变为灰度在IE11中不起作用
- JQuery:悬停时文本颜色切换
- 更改鼠标悬停在选择菜单上的颜色
- 文本的实时预览使链接在悬停时不会更改背景颜色
- FullCalendar 2.3.0悬停时更改日期颜色
- 当鼠标悬停在不同颜色上时,传单突出显示标记
- 使用jquery更改颜色将删除悬停颜色
- 将鼠标悬停在图像上,图像的不透明度和图像下方标题的颜色会发生变化..同样,当标题变成两行时,它会破坏格式
- 将鼠标悬停在切片上时更改d3.js饼图标签的颜色
- 如何在Javascript中悬停,将背景颜色更改为特定的类
- 悬停时使用Javascript/jQuery淡化自定义SVG的颜色
- Highcharts-更改悬停点的颜色
- 使用jQuery更改背景时,链接将丢失css背景颜色悬停属性
- Jquery改变背景颜色悬停,不断闪烁
- 如何循环通过背景颜色悬停与jQuery
- 切换CSS背景颜色悬停和点击使用Javascript
- 背景颜色悬停淡出效果CSS