gpt4 book ai didi

javascript - 点击后如何保持星星颜色?

转载 作者:行者123 更新时间:2023-12-03 11:03:45 25 4
gpt4 key购买 nike

如何在点击星星后保持星星的颜色,并在点击更高或更低评级的星星时更改它?

我想为我的网站创建一个凝视组件

我可以看到星星的颜色发生变化,但点击星星后它不会停留。

<HTML>
<head>
.star{
float:left;
height: 100%;
width: 20%;
}

#container{
background-image: url('http://img1.targetimg1.com/wcsstore/TargetSAS/11_05_2013_06_55/images/ratings-large-sprite-r5.gif');
width: 226px;
height: 50px;
}
</head>
<body ng-app="RatingApp" ng-controller="RatingCtrl" ng-init="rating = star.rating + 1">
<div id="container">
<div id="1" class="star"></div>
<div id="2" class="star"></div>
<div id="3" class="star"></div>
<div id="4" class="star"></div>
<div id="5" class="star"></div>
</div>
</body>
</html>

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script>$("#1").mouseover(function(){
$("#container").css('background-position', '0px -38px');
});
$("#2").mouseover(function(){
$("#container").css('background-position', '0px -76px');
});
$("#3").mouseover(function(){
$("#container").css('background-position', '0px -114px');
});
$("#4").mouseover(function(){
$("#container").css('background-position', '0px -152px');
});
$("#5").mouseover(function(){
$("#container").css('background-position', '0px -190px');
});

$(".star").mouseout(function(){
$("#container").css('background-position', '0px 0px');
});</script>

最佳答案

一种解决方案是在单击星星时保存评级。到目前为止,您根本没有监听点击事件。您可以通过使用

添加处理程序来完成此操作
$('#1').click(function(){
//your code here
});

当鼠标移出时,您可以将背景位置恢复为上次点击的评级,而不是 0。

以下是如何执行此操作的示例:http://jsfiddle.net/e8hffqs5/

关于javascript - 点击后如何保持星星颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27960529/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com