gpt4 book ai didi

javascript - ng-mouseover ng-mouseout 不工作

转载 作者:太空宇宙 更新时间:2023-11-04 11:14:21 32 4
gpt4 key购买 nike

下面是我的代码,如果其中一个内容变量以 * 开头,我试图让包含在 div 标签中的内容在鼠标经过它时改变背景颜色。但它不起作用......

// html

<style>
.normal{background-color: white}
.change{background-color: gainsboro}
</style>

<div ng-mouseover="checkAs(this)" ng-mouseout="this.className='normal'">
......
</div>

// js

$scope.checkAs = function(obj) {
var name = $scope.opportunity.name;
var asterisk = '*';
if(name.startsWith(asterisk)) {
obj.className='change';
} else {
obj.className='normal';
}
};

最佳答案

如果您决定以 Angular 执行此操作,则必须通过 ng-mouseover 调用一个函数,并且在该函数中,您将需要一个选择器,例如 JQueryJavascript's query selector ,然后根据需要修改元素。你必须做这样的事情(使用 JQuery):

$scope.checkAs = function() {
$("div").hover(function() {
$(this).prop('background-color','gainsboro');
}, function(){
$(this).prop('background-color','white');
});
};

但是,正如 PSL 所建议的,checkAs(this) 中的“this”将不是 DOM 元素。 CSS 解决方案可能更好:

div :hover{
background-color: gainsboro
}

关于javascript - ng-mouseover ng-mouseout 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33355522/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com