如何用jQuery实现五星好评

  jQuery是js的一个库,封装了我们开发过程中常用的一些功能,方便我们来调用,提高了我们的开发效率。

  Js库是把我们常用的功能放到一个单独的文件中,我们用的时候,直接引用到页面里面来就可以了。

  接下来,我使用jQuery实现一个常见的五星好评功能。下面的页面中,我引用了前端的jQuery和bootstrap框架,读者可以从网上下载这些框架资源。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>五星好评</title>
    <link rel="stylesheet" href="../bootstrap/css/bootstrap.min.css">
    <script src="../js/jquery-1.11.1.js"></script>
</head>
<!--设置样式-->
<style>
    ul{
        list-style-type: none;
    }
    li{
        float: left;
        margin-left: 15px;
        font-size: 60px;
        font-family: "simsun";
        cursor: pointer;
    }
    div{
        clear: both;
    }
    button{
        margin-left: 70px;
        font-size:30px;
    }
</style>
<!--JS代码-->
<script>
//    入口函数
    $(function(){
//        设置两个状态的星星
        var emptyStar="☆";
        var fullStar="★";
//        li鼠标移入事件
        $("li").mouseenter(function(){
            $(this).text(fullStar).prevAll().text(fullStar).end().nextAll().text(emptyStar);
        });
//        li鼠标离开事件
        $("li").mouseleave(function(){
            $("li").text(emptyStar);
            $("li.current").text(fullStar).prevAll().text(fullStar).end().nextAll().text(emptyStar);

        });
//        li点击事件
        $("li").click(function(){
            if($(this).hasClass("current")){
                $(this).removeAttr("class");
            }else{
                $(this).attr("class","current").siblings().removeAttr("class");
            }
        })
//        button点击事件
        $("button").click(function(){
            var boo=false;
            for(var i=0;i<$("ul>li").length;i++){
                if($("ul>li").hasClass("current")){
                    boo=true;
                }
            }
            if(boo){
                console.log("分数:"+($("ul>li.current").index()+1)+"分");
            }else{
                return alert("您还没有选择呢!");
            }
        })
    })
</script>
<body>
<ul class="box">
    <li>☆</li>
    <li>☆</li>
    <li>☆</li>
    <li>☆</li>
    <li>☆</li>
</ul>
<div>
    <button>提交</button>
</div>
</body>
</html>

  效果如下:

原文地址:https://www.cnblogs.com/lizhangyong/p/8158193.html

时间: 2024-10-09 18:17:49

如何用jQuery实现五星好评的相关文章

如何用jquery实现实时监控浏览器宽度

如何用jquery实现实时监控浏览器宽度 2013-06-05 14:36匿名 | 浏览 3121 次 $(window).width();这代码只能获取浏览器刷新时的那一刻的宽度,如何才能达到实时获取浏览器宽度呢?求教!谢谢啦! 补充一下:比如我想达到这个效果,当浏览器宽度大雨一定数值时,执行一段代码:$(function(){ if( $(window).width() > 600 ) { /* 这里是要执行的代码 */ }})现在的问题是,这只在刷新页面那一刻有效,当变化浏览器宽度时就没用

如何用jquery获取&lt;input id=&quot;test&quot; name=&quot;test&quot; type=&quot;text&quot;/&gt;中输入的值?

如何用jquery获取<input id="test" name="test" type="text"/>中输入的值?$(" #test ").val()$(" input[ name='test' ] ").val()$(" input[ type='text' ] ").val()$(" input[ type='text' ]").attr(&quo

如何用Jquery判断在键盘上敲的哪个按键

有时候我们需要判断我们在键盘上敲了哪个键,这个需要查询下键盘上的键对应的值是多少,比如Enter键是13. 下面是Jquery代码,别忘了引用Jquery包哈. <script type="text/javascript">        $(document).keypress(function (event) {            var keycode = (event.keyCode ? event.keyCode : event.which);        

如何用jquery获得td里边的内容

jQuery 中使用 text() 或者 html() 函数可以获取td的内容: $("td").text();   // 或者 $("td").html(); 二者区别在于前者返回所选元素的文本内容,后者返回所选元素的内容(包括 HTML 标记). 下面实例演示:点击按钮后获取所有选中行的td单元格的内容 1.HTML结构 <table id = "test"> <tr><td><input type=

如何用Jquery实现 ,比如点击图片之后 ,该图片变成向下的箭头,再点击向下箭头的图片 又变成原始图片呢

<!DOCTYPE html><html><head><meta charset="utf-8" /><title>切换图片</title> <script src="http://code.jquery.com/jquery-1.4.2.min.js"></script><script>$(function() { $("img").to

如何用Jquery判断在Html中一个元素是否存在

背景: 在一个动态生成的html文件里,往往会有这样的情况:一些元素可能存在也可能不存在,当函数运行需要的时候就得进行判断. if($("#id").length>0){ //存在id为"id"的元素 }else{ //不存在id为"id"的元素 } 使用 jQuery 对象的属性 length 来判断,如果 > 0 就存在. (JQuery 大法好!) ref:http://www.cnblogs.com/CatHeadTiger/

如何用jquery实现点击后跳到页面指定位置

很多网站都有这种功能,主要为了让用户在长篇大论中比较迅速的跳到自己想要看的内容处,比如bootstrap就有相应的功能. 介绍一种非常简便可以实现这种功能的方式. 思路:1.这里要用到点击事件,因为点击处可能数量较多,因此最好用事件代理来处理,可以提高性能. 2.当点击一个按钮时,能够获取到与他相对应的元素的ID. 3.通过jquery的offset方法返回top和left两个属性后获取他的top属性. 4.用animate方法改变html的scrollTop属性,值为上面的top属性值. 以下

js 事件冒泡是什么如何用jquery阻止事件冒泡

什么是事件起泡:一个事件不能凭空产生,这就是事件的发生等等,接下来为大家介绍下jquery阻止事件起泡以及关于js事件起泡的验证,感兴趣的朋友可以参考下哈 (1)什么是事件起泡 首先你要明白一点,当一个事件发生的时候,该事件总是有一个事件源,即引发这个事件的对象,一个事件不能凭空产生,这就是事件的发生. 当事件发生后,这个事件就要开始传播.为什么要传播呢?因为事件源本身并没有处理事件的能力.例如我们点击一个按钮时,就会产生一个click事件,但这个按钮本身不能处理这个事件(废话),事件必须从这个

如何用jquery+ajax写省市区的三级联动?(封装和不封装两种方式)-----2017-05-14

首先,要实现如下图效果, 1.要理清思路: 先做出三个下拉菜单----根据第一个下拉菜单的value值获取第二个下拉列表的内容,第三个同理. 2.用到的数据库表:Chinastates表 规律:根据国家级(中国)的areacode查询省级(如:北京) ; 根据省级的areacode查询市级(如:北京市辖):根据市级的areacode查询区级(如东城区) 第一种方式:没有用到封装,数据读取较慢,可以看看原理,这样在第二种方式封装时就容易多了. 代码如下: <!DOCTYPE html> <