jQuery实现热搜框

功能:点击换一换,换到下一页 直至第一页,通过当前指数和历史指数的差值,显示下降或上升趋势
在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
   <style>
       *{
           margin: 0px;
           padding: 0px;
           list-style: none;
       }
       .tpl{
           display: none;
       }
       /* //清除内部浮动 */
       .clearF::after{
           content: '';
           display: block;
           clear: both;
           overflow: hidden;
       }
       .wrapper{
           border: 1px solid #ccc;
           padding: 10px 5px;
           width: 350px;
           margin: 100px auto 0px;
       }
       .wrapper .headSection{
           margin: 10px;

       }
       .wrapper .headSection .hot{
           font-size: 18px;
           font-weight: bold;
           float: left;
       }
       .wrapper .headSection .change{
           float: right;
           color: #08f;
           cursor: pointer;
       }
       .wrapper .showSection .number{
           color: #fff;
           position: inline-block;
           width: 50px;
           height: 50px;
           padding :3px;
           /* border: 1px solid black; */
           text-align: center;
           background: #0bf;
       }
       .wrapper .showSection .mes{
           float: right;
       }
       .wrapper .showSection .mes::after{
        content: '';
           display: inline-block;
           width: 15px;
           height: 15px;

       }
       .wrapper .showSection .mes.up::after{
          
           background-image: url('./1.png');
           background-size: 100% 100%;
       }
       .wrapper .showSection .mes.down::after{
          
           background-image: url('./2.png');
           background-size: 100% 100%;
       }
       .wrapper ul li{
           border-bottom: 1px solid #ccc;
           padding:5px 0;
       }


   </style>
</head>
<body>
              <div class="wrapper">
                  <div class="headSection clearF">
                      <span class="hot">搜索热点</span>
                      <span class="change">换一换</span>
                  </div>
                  <ul class="showSection">
                      <li class="tpl clearF">
                          <span class="number"></span>
                          <span class="title"></span>
                          <span class="mes up"></span>
                      </li>
                  </ul>
              </div>                                    
    <script src="./jquery.js"></script>
    <!-- <script src="./myjQuery.js"></script> -->
    <script src="./data.js"></script>
   <script>
       (function(){
           //初始化变量
           var $Wrapper = $('.wrapper');
           var $showSection = $Wrapper.find('.showSection');
           var colorsArray = ['#f54545','#ff8547','ffac38'];
           //当前处在第一页
           var curPage = 0;
           var totlePage = Math.ceil(data.length/10);
           //初始化样式操作
           $showSection.hide();
           function bindEvent(){
               $Wrapper.find('.change').on('click',function(){
                  curPage =  ++curPage % totlePage;
                  renderPage(data);

               });
           }

           function renderPage(data){
               $showSection.hide().find('.showItem').remove();
               //根据数据渲染页面
               var len = (data.length - curPage *10) >= 10?10:data.length - curPage * 10;
                //控制每一页应该渲染多少数据 
               for(var i = 0;i < len;i++){
                   var $Clone = $Wrapper.find('.tpl').clone().removeClass('tpl').addClass('showItem');
                   var ele = data[i+curPage *10]

                   $Clone.children('span').eq(0)
                         .text(i+curPage*10+1).css('backgroundColor',curPage == 0 && colorsArray[i+curPage])
                            .next()
                              .text(ele.title)
                                 .next()
                                    .text(ele.search)
                                      .addClass(ele.search > ele.hisSearch ? 'up': 'down');
                $showSection.append($Clone);
               }
                        $showSection.fadeIn();
           }
           bindEvent();
           renderPage(data);
       })(data);


   
            </script>

</body>
</html>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值