我有以下HTML:
img class="hoverContact" img class="hoverContact" img class="hoverContact"
以下Jquery:
function highlightContact(ev) { $(this).addClass('lightblue'); } $('.hoverContact').mouseover(function(){ highlightContact(); });
有什么建议吗?谢谢!
答案 0 :(得分:2)
使用apply()
方法,以便this
函数中的 highlightContrast()
引用相关的img标记。
function highlightContact(ev) {
$(this).addClass('lightblue');
}
$('.hoverContact').mouseover(function(){
highlightContact.apply(this);
});
或者,如果您根本不需要ev
- 如果您要做的只是添加该类,则可以完全摆脱function highlightContact(){...}
并简单地使用:
$('.hoverContact').mouseover(function(){
$(this).addClass('lightblue');
});
答案 1 :(得分:1)
当函数没有上下文时,您尝试在this
内使用highlightContact
。此外,该函数采用参数ev
,但您没有将其传入。而是从鼠标悬停函数传递this
并在{1}}中引用ev
而不是this
highlightContact函数:
function highlightContact(ev) {
$(ev).addClass('lightblue');
}
$('.hoverContact').mouseover(function(){
highlightContact(this);
});