如何在元素移动时删除悬停状态

时间:2014-01-16 03:58:56

标签: javascript jquery html css hover

我有这个例子:

<div class="container">
    <div class="bp"></div>
</div>

http://jsfiddle.net/VKwjD/20/

如果你盘旋在同一个方格上,他的颜色会发生变化;如果单击,则父级大小会更改,因此方块移动。

我的问题是:如果您在点击后没有移动鼠标,则方块会处于悬停状态......为什么? 点击后可以删除此状态吗?没有移动鼠标...

感谢您的帮助

1 个答案:

答案 0 :(得分:-1)

HTML:

<div class="container">
    <div class="bp" id="bp"></div>
</div>

CSS:

.container {
    background: #FF0000;
    width: 200px;
    height: 200px;
    position: relative;
}    
.container.hide {
    width: 50px; 
}        
.bp {
    background: #00FFFF;
    width: 30px;
    height:30px;
    top:0px;
    right:0px;
    position:absolute;
    cursor: pointer;
}    
.bp:hover{
    background: #0000FF!important;
}

JavaScript的:

$(document).ready(function() {
    $('.bp').click(function() {        
        if($('.container').hasClass('hide')) {
            $('.container').removeClass('hide');
            var l1 = document.getElementById('bp');
            l1.style.background = '#00FFFF';            
        }
        else {
            $('.container').addClass('hide');
            var l1 = document.getElementById('bp');
            l1.style.background = '#0000FF';
        }
    });        
});