jquery实现类似淘宝星星评分功能有截图
作者:bea
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>&
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“
$(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();
});
})
出现的效果是这样的:
可惜的是你一点击下去--就不可更改了。真的是很悲伤啊。大概也只是做了一个小样子而已。
prevAll() 和nextAll()这两个方法?暂且说方法吧。在jquery的文档可以查得到。
index 在jquery 里是返回元素的索引值,从零开始。分数呢就加1,
猜你喜欢
您可能感兴趣的文章:
- JS实现OCX控件的事件响应示例
- javascript快速排序算法详解
- js生成的验证码的实现与技术分析
- Node.js中使用Log.io在浏览器中实时监控日志(等同tail -f命令)
- nodejs命令行参数处理模块commander使用实例
- node.js中使用q.js实现api的promise化
- Javascript判断文件是否存在(客户端/服务器端)
- ie8下修改input的type属性报错的解决方法
- JavaScript函数定义的常见注意事项小结
- JavaScript的各种常见函数定义方法
- JavaScript中合并数组的N种方法
- JavaScript的null和undefined区别示例介绍
- JavaScript中变量声明有var和没var的区别示例介绍
- JavaScript的arguments对象应用示例
- avascript中的自执行匿名函数应用示例
- JavaScript function 的 length 属性使用介绍
- css与javascript跨浏览器兼容性总结
- 一个通过script自定义属性传递配置参数的方法
- 一个字符串反转函数可实现字符串倒序