【发布时间】:2012-12-31 20:33:05
【问题描述】:
我有一个单词列表,每个单词都有一个数字(条纹)。我使用 AngularJS 的 ng 样式根据分配给它的数字设置每个单词的背景颜色。
html
<ul class="unstyled">
<li class="tHi" ng-repeat="item in items" ng-click="getEdit(item.word)" ng-style="bgstyle(item.streak)">
<span>{{item.word}} {{item.streak}}</span>
</li>
</ul>
从 ng-style 调用的javascript。
$scope.bgstyle = function (streak) {
var red = 255;
var green = 255-streak;
var blue = 255-streak;
var rgb = blue | (green << 8) | (red << 16);
var sColor = '#' + rgb.toString(16);
return {backgroundColor: sColor};
}
这可行,但是,我希望当鼠标悬停在一个单词上时背景会突出显示。我添加了一个“tHi”类,它通常会在悬停时改变背景,但它会被添加的样式覆盖。
这里有一个 jsfiddle 演示了这个问题。
有没有比 ng-style 更好的方法来设置背景,使其与分配给每个单词的数字相对应?或者有没有办法在用户将鼠标悬停在某个词上时突出显示?
【问题讨论】:
标签: javascript angularjs