本文實例講述了jquery實現類似淘寶星星評分功能的方法,分享給大家供大家參考之用。具體方法如下:
html部分代碼如下:
<body>
<div id="div">
<ul>
<li>☆</li>
<li>☆</li>
<li>☆</li>
<li>☆</li>
<li>☆</li>
</ul>
</div>
<p id="p"></p>
<p id="score"></p>
</body>
上述代碼中:
id="p"顯示即時分數
id="score"顯示最終分數
javascript代碼如下:
<script type="text/javascript">
$(function () {
//為所有的li標簽綁定mouseout和mouseover事件。bind({事件名:function(){},事件名:function(){}})的方法綁定多個事件
$("#div li").bind({
mouseout:function () {
$(this).css("color", "black").html("☆").prevAll().css("color", "black").html("☆")
},
mouseover: function () {
$(this).css("color", "red").html("★").prevAll().css("color", "red").html("★")
}
});
//=實時顯示分數.【index】搜索匹配的元素,並返回相應元素的索引值,從0開始計數。
$("#div li").mouseover(function () {
$("#p").html(parseInt( $(this).index("#div li"))+1);
});
//鼠標按下時,確定分數。額,就不更改了,大局已定。
$("#div li").mousedown(function () {
$("#score").html(("你選擇的分數是" + (parseInt($(this).index("#div li")) + 1)));
$(this).css("color", "red").html("★").prevAll().css("color", "red").html("★")
//全部li標簽的綁定事件全部清除--unbind方法可以加參數清除特定的事件。不加全部清除
$(this).unbind().prevAll().unbind().nextAll().unbind();
});
})
</script>
希望本文所述對大家的jQuery WEB程序設計有所幫助