我有一个<div>
,我想在悬停时切换其类。
这是我的代码:
function a(){
this.classList.toggle('first');
this.classList.toggle('sec');
}
document.querySelector('#container').addEventListener('click', a );
我知道我的HTML或CSS没有问题。只是我需要更改并替换click
,但我不知道应该放什么。
请帮忙!!
我有一个<div>
,我想在悬停时切换其类。
这是我的代码:
function a(){
this.classList.toggle('first');
this.classList.toggle('sec');
}
document.querySelector('#container').addEventListener('click', a );
我知道我的HTML或CSS没有问题。只是我需要更改并替换click
,但我不知道应该放什么。
请帮忙!!
Hover事件被称为"mouseenter"而不是"click"。
<script type="text/javascript">
function a(){
this.classList.toggle('first');
this.classList.toggle('sec');
}
document.querySelector('#container').addEventListener('mouseenter', a )
document.querySelector('#container').addEventListener('mouseleave', a )
</script>
ID
(#container
) ж—¶пјЊдј з»џзљ„ getElementById()
жЇ” querySelector()
еї«иї‘10еЂЌгЂ‚ - Roko C. Buljan虽然Tom Chung的方法肯定有效,但最好为mouseenter
和mouseleave
设置自己的处理程序:
var container = document.querySelector('#container');
container.addEventListener('mouseenter', function(){
this.classList.remove('first');
this.classList.add('second');
})
container.addEventListener('mouseleave', function(){
this.classList.add('first');
this.classList.remove('second');
})
.first {
background: green;
}
.second {
background: orange;
}
<div id="container" class="first">
TEST
</div>
(另请参见这个Fiddle)
:hover
?更多信息请参见:http://www.w3.org/wiki/CSS/Selectors/pseudo-classes/:hover - msturdy