这是我当前的代码,我已经尝试了一个多小时:
$('#menu_list').bind('mouseenter mouseleave click', function(event){
if(event.type == 'click') {
$('#list_img').css('background-image', 'url(<?=base_url()?>/assets/css/images/list_active.png)');
$('#add_img').css('background-image', 'url(<?=base_url()?>/assets/css/images/add_inactive.png)');
$('#search_img').css('background-image', 'url(<?=base_url()?>/assets/css/images/search_inactive.png)');
$('#list_text').css('color', 'black');
$('#add_text').css('color', '#C0C0C0');
$('#search_text').css('color', '#C0C0C0');
} else if(event.type == 'mouseenter') {
$('#list_text').css('color', 'black');
$('#list_img').css('background-image', 'url(<?=base_url()?>/assets/css/images/list_active.png)');
} else if(event.type == 'mouseleave') {
$('#list_img').css('background-image', 'url(<?=base_url()?>/assets/css/images/list_inactive.png)');
}
});
它应该做的是当我悬停时,图标会发生变化。但是当我单击时,该图标会保持活动状态,直到我单击另一个项目。mouseenter/mouseleave 没有问题。问题从点击开始。单击时,它会完成这项工作,但在移动鼠标时,mouseleave 功能会激活。意味着图标再次变为非活动状态。