怎么用jQuery写五星评价

jQuery

 <script src="../jquery-1.8.3.min.js"></script>
    <script>
        /*jQuery的查询对象是类数组对象,
        在js中类数组是不能用数组的函数的,要怎样解决jQuery查询对象
        不能用js数组函数的问题
        解决:
        jQuery自己模仿数组的函数,自己写了两个功能一样的数组函数
        这两个模仿的数组函数,jQuery的查询对象类数组也可以使用
        模仿的函数一:js中的indexof(),jq中有index()也可以用来
        根据数组索引值查找对应的元素
        */
          //获取元素
          /*jq的on方法的作用:在被选的元素上添加一个或多个事件程序
          on方法的语法:参数1:要在score添加的事件,参数2:规定只能添加指定
          子元素的事件处理程序,参数3:传输到函数的额外数据
          参数4:click事件发生时运行的函数
          */
          $("ul.score")
          .on('click','li',function(){
            //   alert("hit me");
            // 获得当前点中的是第几个li
            //var i=$("ul.score>li").index(this)
            /*简写形式:
            由于jq的index函数默认只在父元素下找
            而上面只有一个ul所以可以简写成
            */
            var i=$(this).index();
            //alert(i);
            //如果li<i+1则li变为黄色 (小于i,+1后包括i)
            /*ul.score下的li如果小于i+1的位置,颜色为pink*/
            $(`ul.score>li:lt(${i+1})`).css("background","pink");
            /* ul.score下的li如果大于i则颜色不变 (大于i但不包括i)*/
            $(`ul.score>li:gt(${i})`).css("background","#fff");
          })
    </script>

HTML

 <h3>打分案例</h3>
    <ul class="score">
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ul>

CSS

 <style>
        .score{
            list-style: none;
            margin: 0;
            padding: 0;
        }
        .score li{
            display:inline-block;
            width: 50px;
            height: 50px;
            border: 1px solid green;
            cursor: pointer;
            border-radius: 50%;
        }
    </style>

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值