效果如下:

  代码如下:

  1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
6 <meta http-equiv="X-UA-Compatible" content="ie=edge">
7 <title>Document</title>
8 <link rel="stylesheet" href="./css/css-comment.css">
9 <style>
10 a:active, a:hover{
11 text-decoration: underline;
12 }
13 body{
14 color: #000;
15 }
16 .wrapper{
17 position:absolute;
18 top: 150px;
19 left: 50%;
20 margin-left: -175px;
21 border: 1px solid black;
22 width: 351px;
23 }
24 .clearF::after{
25 content: '';
26 display: block;
27 clear: both;
28 overflow: hidden;
29 }
30 .wrapper .topSection{
31 padding: 5px 7px 0px;
32 height: 25px;
33 }
34 .wrapper .topSection .hot{
35 font-weight: 700;
36 font-size: 14px;
37 color: #000;
38 line-height: 25px;
39 }
40 .wrapper .topSection .change{
41 float: right;
42 cursor: pointer;
43 line-height: 25px;
44 color: #3196d9;
45 }
46 .wrapper .showSection{
47 padding: 5px 7px;
48 }
49
50 .wrapper .showSection li{
51 height: 17px;
52 line-height: 17px;
53 padding: 5px 0 5px 0;
54 }
55
56 .wrapper .showSection .number{
57 display: inline-block;
58 padding: 1px 0;
59 color: #fff;
60 width: 14px;
61 line-height: 100%;
62 font-size: 12px;
63 text-align: center;
64 background-color: #0483f4;
65 }
66 .wrapper .showSection .title{
67 padding-left: 5px;
68 font-size: 13px;
69 color: #3045da;
70 }
71 .wrapper .showSection .mes{
72 float: right;
73 }
74 .wrapper .showSection .mes::after{
75 content: '';
76 display: inline-block;
77 width: 15px;
78 height: 15px;
79 background-size: 100% 100%;
80 background-position-y: 2px;
81 background-repeat: no-repeat;
82 }
83 .wrapper .showSection .mes.up::after{
84 background-image: url('./img/up.png');
85 }
86 .wrapper .showSection .mes.down::after{
87 background-image: url('./img/down.png');
88 }
89 .tpl{
90 display: none;
91 }
92 </style>
93 </head>
94 <body>
95 <div class="wrapper">
96 <div class="topSection clearF">
97 <span class="hot">搜索热点</span>
98 <span class="change">换一换</span>
99 </div>
100 <ul class="showSection">
101 <li class="tpl clearF">
102 <span class="number">1</span>
103 <a href="#" class="title">英停售华为5G手机</a>
104 <span class="mes">1149万</span>
105 </li>
106 </ul>
107 </div>
108 <script src="./jquery/jquery.js"></script>
109 <script src="./js/serverData.js"></script>
110 <script>
111 (function(data){
112 var colorsArray = ['#f54545', '#ff8547', '#ffac38']; // 字体颜色
113 var wrapper = $('.wrapper');
114 var showSection = wrapper.find('.showSection');
115 var curPage = 0; //页数
116 var totalPage = Math.ceil( data.length / 10 );
117
118 showSection.hide(); //先隐藏, 后 淡出动画效果
119
120 function bindEvent(){ //绑定事件,点击后,页数 ++
121 wrapper.find('.change').on('click',function(){
122 curPage = ++curPage % totalPage; // 利用数学计算,让每次点击后 ++ 到4 的时候 变成 0
123 renderPage(data) //点击后, 拿到新页数, 重新 渲染页面
124 })
125 }
126 function renderPage(data){
127 showSection.find('.tpl').nextAll().remove(); // 删除以前的结构。
128 showSection.hide();
129
130 var len = (data.length - curPage * 10) >= 10 ? 10 : data.length - curPage * 10;
131 // ↑ 计算后, 每次渲染的 数据为 10 条。 到了 第 3 页,要循环的 为 4 此而已。
132
133 for(var i = 0; i < len; i ++){
134 var cloneLi = showSection.find('.tpl').clone().removeClass('tpl'); //克隆,上面的html 作为模板
135 var ele = data[i + curPage * 10];
136 cloneLi.find('.number')
137 .text(i + curPage * 10 + 1)
138 .css('background', curPage == 0 && (colorsArray[i + curPage * 10 + 1] || '#0483f4'))
139 .next()
140 .text(ele.title)
141 .next()
142 .addClass(ele.search > ele.hisSearch ? 'up' : 'down');
143
144 showSection.append(cloneLi);
145 showSection.fadeIn();
146 }
147 }
148 bindEvent();
149 renderPage(data);
150 })(data)
151 </script>
152 </body>
153 </html>

  以下代码为测试 数据:

var data = [
{title:'金星秀停播', search:47754, hisSearch:42884},
{title:'8岁孩独自吃火锅', search:46731, hisSearch:41076},
{title:'父亲开车撞死儿子', search:44950, hisSearch:47232},
{title:'国足战胜乌兹别克', search:24954, hisSearch:23492},
{title:'中国研发高速列车', search:11334, hisSearch:39224},
{title:'狐狸被养成怪物', search:6134, hisSearch:4282},
{title:'杨坤被骚扰发飙', search:5207, hisSearch:4342},
{title:'陈冠希怒怼女主持', search:5204, hisSearch:9831},
{title:'王俊凯室友曝光', search:4921, hisSearch:2832},
{title:'中国海军击溃海盗', search:4351, hisSearch:8271},
{title:'美团再遭举报', search:4293, hisSearch:9824},
{title:'德国现巨型炸弹', search:2985, hisSearch:6823},
{title:'七旬老太欠款8亿', search:2150, hisSearch:8901},
{title:'南京现快递毒包裹', search:1929, hisSearch:1092},
{title:'付辛博现身民政局', search:1791, hisSearch:1921},
{title:'客人换衣被直播', search:1691, hisSearch:1428},
{title:'北京现共享男友', search:1535, hisSearch:1021},
{title:'彩色兵马俑展出', search:1417, hisSearch:1092},
{title:'怕被盗携巨款旅游', search:1322, hisSearch:1921},
{title:'何雯娜退役', search:1220, hisSearch:1901},
{title:'指示孩子闹机场', search:1056, hisSearch:1026},
{title:'一批新规9月实施', search:931, hisSearch:428},
{title:'霍元甲玄孙女夺冠', search:850, hisSearch:987},
{title:'姚刚被立案侦查', search:784, hisSearch:887},
{title:'泰方全面搜捕英拉', search:682, hisSearch:287},
{title:'中国游客泰国遭砍', search:601, hisSearch:427},
{title:'秦俊杰获杨紫祝福', search:595, hisSearch:465},
{title:'台军演练用日军歌', search:525, hisSearch:799},
{title:'印度医院儿童死亡', search:501, hisSearch:987},
{title:'周杰伦开社交账号', search:468, hisSearch:989},
{title:'秦俊杰获杨紫祝福', search:595, hisSearch:465},
{title:'台军演练用日军歌', search:525, hisSearch:799},
{title:'印度医院儿童死亡', search:501, hisSearch:987},
{title:'周杰伦开社交账号', search:468, hisSearch:989}
];

jQuery 小demo 热点排名的更多相关文章

  1. 新手 gulp+ seajs 小demo

    首先,不说废话,它的介绍和作者就不在多说了,网上一百度一大堆: 我在这里只是来写写我这2天抽空对seajs的了解并爬过的坑,和实现的一个小demo(纯属为了实现,高手请绕道); 一.环境工具及安装 1 ...

  2. 一个基于ES6+webpack的vue小demo

    上一篇文章<一个基于ES5的vue小demo>我们讲了如何用ES5,vue-router做一个小demo,接下来我们来把它变成基于ES6+webpack的demo. 一.环境搭建及代码转换 ...

  3. 一个基于ES5的vue小demo

    由于现在很多vue项目都是基于ES6开发的,而我学vue的时候大多是看vue官网的API,是基于ES5的,所以对于刚接触项目的我来说要转变为项目的模块化写法确实有些挑战.因此,我打算先做一个基于ES5 ...

  4. 基于HTML5 audio元素播放声音jQuery小插件

    by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=1609 一.前面的些唠 ...

  5. 入门Leaflet之小Demo

    入门Leaflet之小Demo 写在前面 ---- WebGIS开发基础之Leaflet GIS基本概念:GIS.Map.Layer.Feature.Geometry.Symbol.Data(Poin ...

  6. 【Java】Jsoup爬虫,一个简单获取京东商品信息的小Demo

    简单记录 - Jsoup爬虫入门实战 数据问题?数据库获取,消息队列中获取中,都可以成为数据源,爬虫! 爬取数据:(获取请求返回的页面信息,筛选出我们想要的数据就可以了!) 我们经常需要分析HTML网 ...

  7. Nancy之基于Nancy.Hosting.Self的小Demo

    继昨天的Nancy之基于Nancy.Hosting.Aspnet的小Demo后, 今天来做个基于Nancy.Hosting.Self的小Demo. 关于Self Hosting Nancy,官方文档的 ...

  8. Nancy之基于Nancy.Owin的小Demo

    前面做了基于Nancy.Hosting.Aspnet和Nancy.Hosting.Self的小Demo 今天我们来做个基于Nancy.Owin的小Demo 开始之前我们来说说什么是Owin和Katan ...

  9. Nancy之基于Self Hosting的补充小Demo

    前面把Hosting Nancy with ASP.NET.Self Hosting Nancy和Hosting Nancy with OWIN 以demo的形式简单描述了一下. 这篇是为Self H ...

随机推荐

  1. 556. 下一个更大元素 III

    556. 下一个更大元素 III 给定一个32位正整数 n,你需要找到最小的32位整数,其与 n 中存在的位数完全相同,并且其值大于n.如果不存在这样的32位整数,则返回-1. 示例 1: 输入: 1 ...

  2. 嵌入式以太网模块的TCP Client模式说明

    嵌入式以太网模块采用TTL电平串口,支持TCP Server,TCP Client,UDP Slave,UDP Master,TCP-ZSD,UDP-ZSD多种通信协议,TCP服务器模式支持多连接,可 ...

  3. 11张图和源码带你解析Spring Bean的生命周期,建议收藏~!

    在网上已经有跟多Bean的生命周期的博客,但是很多都是基于比较老的版本了,最近把整个流程画成了一个流程图.待会儿使用流程图,说明以及代码的形式来说明整个声明周期的流程.注意因为代码比较多,这里的流程图 ...

  4. 系统解析Apache Hive

    Apache Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供一种HQL语言进行查询,具有扩展性好.延展性好.高容错等特点,多应用于离线数仓建设. 1. ...

  5. 关于H5页面在微信浏览器中音视频播放的问题

    Android 上,因为各个软件使用的浏览器渲染引擎不一样,所以视频播放的效果差异也很大,这里主要以微信为主.微信使用的是腾讯浏览器自带的X5内核. 而iOS是不允许使用第三方浏览器内核的,就是Goo ...

  6. Ubuntu17.10 React Native 环境搭建

    React Native 环境搭建 环境:ubuntu17.10 安装依赖 必须安装的依赖有:Node.React Native 命令行工具以及 JDK 和 Andriod Studio. 安装nod ...

  7. 15 CGI和WSGI

    15 CGI和WSGI CGI是通用网关接口,是连接web服务器和应用程序的接口,用户通过CGI来获取动态数据或文件等. CGI程序是一个独立的程序,它可以用几乎所有语言来写,包括perl,c,lua ...

  8. JVM常用调优工具介绍

    前言 王子在之前的JVM文章中已经大体上把一些原理性问题说清楚了,今天主要是介绍一些实际进行JVM调优工作的工具和命令,不会深入讲解,因为网上资料很多,篇幅可能不长,但都是实用的内容,小伙伴们有不清楚 ...

  9. java开发就业信息管理系统

    本文实例为大家分享了java就业信息管理平台开发案例,供大家参考,具体内容如下 可查询公司信息,学生信息,班级信息,针对学生就业与否信息的统计,老师和管理员登录后的权限不同等就业信息管理平台想要实现的 ...

  10. 无法将“add-migration”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。解决方案

    在程序包管理控制台中执行 Install-Package Microsoft.EntityFrameworkCore.Tools