我有两个简单的脚本html:
<html>
<body>
<style>
.myBtn{
display: none
}
.myBtnReg{
display: block
}
</style>
<button class="myBtnReg" id="btn1" >Click Me!</button>
<script src="jquery-1.11.2.min.js"></script>
<script src="js.js"></script>
</body>
</html>
和javascript:
$(function(){
$("button").mouseenter(function(){
$(this).attr("class", "myBtn");
});
$("button").mouseleave(function(){
$(this).attr("class", "myBtnReg");
});
});
我试图在鼠标进入时按钮更改类的效果,当鼠标离开时将其更改回来,上面的代码似乎无法正常工作,当我将鼠标放在按钮上时闪烁,所以我认为我出于某种原因不断改变课程。
答案 0 :(得分:2)
当您将鼠标悬停在button
上时,您可以将div
置于button
内,然后将div
设置为toggleClass(您还需要设置固定高度在div)
$('div').hover(function() {
$(this).find('button').toggleClass('myBtn');
});
&#13;
div {
height: 50px;
}
.myBtn {
display: none
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<button class="myBtnReg" id="btn1">Click Me!</button>
</div>
&#13;
答案 1 :(得分:0)
你的风格应该像
.myBtn{
background-color:RED;
}
.myBtnReg{
background-color:Green;
}
你的总html就像这样
<html>
<body>
<style>
.myBtn{
background-color:RED;
}
.myBtnReg{
background-color:Green;
}
</style>
<button class="myBtnReg" id="btn1" >Click Me!</button>
<script src="https://code.jquery.com/jquery-2.2.3.min.js" integrity="sha256-a23g1Nt4dtEYOj7bR+vTu7+T8VP13humZFBJNIYoEJo=" crossorigin="anonymous"></script>
<script src="js.js"></script>
</body>
</html>