我正在尝试使用点击事件将全局变量finish
从false
更改为true
以防止悬停在圆上。 我使用点击事件后,我的全局变量finish
没有改变(它仍然是false
),我仍然可以在一些圈子上徘徊。 这是为什么发生?使用jQuery的点击事件无法更改变量
var finish = false;
$(".rating-circle").click(function() {
$(this).addClass("rating-chosen");
$(this).prevAll().addClass("rating-chosen");
finish = true;
});
if (finish == false)
{
$(".rating-circle").hover(
\t function() {
$(this).addClass("rating-hover");
$(this).prevAll().addClass("rating-hover");
},
function() {
$(this).removeClass("rating-hover")
$(this).prevAll().removeClass("rating-hover");
});
}
body {
font-family: Verdana;
}
h1, h2, h3 {
color: darkblue;
}
.rating-circle {
height: 2em;
width: 2em;
border: .1em solid black;
border-radius: 1.1em;
display: inline-block;
margin: 0;
padding: .1em;
}
.rating-hover {
background-color: yellow;
}
.rating-chosen {
background-color: green;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h2>Finding elements using jQuery</h2>
<h3>Rate this session</h3>
<div id="rating-container">
<div class="rating-circle"></div>
<div class="rating-circle"></div>
<div class="rating-circle"></div>
<div class="rating-circle"></div>
<div class="rating-circle"></div>
</div>