我用我的问题做了一个简单的例子,所以我想你更容易理解。我有几个div
都是灰色的,但是当你将鼠标悬停在其中一个上时,你会看到它们得到了真实的颜色。如果我单击其中一个(并发出警报单击),它应该会更改颜色,并且.hover()
不应再在此元素上起作用,直到单击另一个。我在这里坐了一个小时,却没有让它工作:
.test { background-color: #ccc;}
<div class="test" id="d1"></div>
<div class="test" id="d2"></div>
<div class="test" id="d3"></div>
和脚本:
$(function() {
$('#d1').hover(function() { $(this).css('background-color', '#F00'); }, function() { $(this).css('background-color', '#CCC'); });
$('#d2').hover(function() { $(this).css('background-color', '#F0F'); }, function() { $(this).css('background-color', '#CCC'); });
$('#d3').hover(function() { $(this).css('background-color', '#00F'); }, function() { $(this).css('background-color', '#CCC'); });
$('#d1').click(function() { $(this).css('background-color','#F00'); alert("clicked")});
$('#d2').click(function() { $(this).css('background-color','#F0F'); alert("clicked")});
$('#d3').click(function() { $(this).css('background-color','#00F'); alert("clicked")});
})
链接点击这里
似乎悬停仍然有效,它会立即删除背景颜色。
提前致谢!