`
f543711700
  • 浏览: 328329 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

模仿百度后台分页组件

 
阅读更多
效果如下:



代码如下:
public String createPageHtml(int totalPages,int pageNo,int showPages,String href) {
		String htmlstr = "";
		if(totalPages <= 1) {//只有1页,直接返回空串
			return htmlstr;
		} else {
			if(pageNo <= 0 || pageNo > totalPages) {
				pageNo = 1;
			}
			
			String href1 = href + "?totalPages=" + totalPages + "&showPages=" + showPages + "&pageNo=";
			
			if(pageNo != 1) {
				String href2 = href1 + (pageNo-1); 
				htmlstr = " <div class=\"fontPage\"><a href=\"" +href2 + "\" style=\"text-decoration: none;\">&lt;上一页</a></div> ";
			}
			
			int loopCount = showPages;
			int mod = totalPages % showPages;
			//计算总组数
			int a = (mod == 0) ? totalPages / showPages : (totalPages / showPages) + 1;
			//这个a1是代表当前pageNo位于第几组
			int a1 = pageNo%showPages == 0 ? (pageNo/showPages) : (pageNo/showPages) + 1;
			if(a == a1 && mod > 0) {
				loopCount = mod;
			}
			
			//这个startPage是代表当前pageNo所属组的一个元素编号的变量
			//计算公式是: showPages * 第几组 - showPages + 1
			int startPage = (showPages * a1) - showPages + 1;  
			
			for(int i = 1; i <= loopCount; i++) {
				String href3 = href1 + startPage; 
				String s = " <div class=\"normalPage\"><a href=\"" + href3 + "\" style=\"text-decoration: none;\">" + startPage + "</a></div> ";
				if(startPage == pageNo) {
					s = " <div class=\"currPage\"><a href=\"" + href3 +  "\" style=\"text-decoration: none;\">" + startPage + "</a></div> ";
				}
				htmlstr = htmlstr + s;
				startPage ++;
			}
			String href4 = href1 + (pageNo+1); 
			htmlstr = htmlstr + " <div class=\"fontPage\"><a href=\"" + href4 + "\" style=\"text-decoration: none;\">&gt;下一页</a></div> ";
		}
		return htmlstr;
		
	}


css如下:
.currPage {
	float:left;
	width: 18px;
	height: 18px;
	text-align: center;
	line-height:18px;
	margin-right: 5px;
	font-size: 13px;
	text-decoration: none;
}

.fontPage {
	float:left;
	border: 1px solid;
	width: 60px;
	height: 18px;
	border-color: gray;
	text-align: center;
	line-height:18px;
	margin-right: 5px;
	font-size: 12px;
}

.normalPage {
	float:left;
	border: 1px solid;
	width: 18px;
	height: 18px;
	border-color: gray;
	text-align: center;
	line-height:18px;
	margin-right: 5px;
	font-size: 13px;
	text-decoration: none;
}


调用方式如下:
<%=new PageServlet().createPageHtml(totalPages,pageNo,showPages,href) %>


  • 大小: 1.3 KB
分享到:
评论

相关推荐

    模仿移动后台收费

    【标题】:“模仿移动后台收费”项目概述 这个项目的核心是构建一个类似于中国移动后台收费的管理系统,采用的技术栈包括Struts2、Mysql数据库以及jQuery和Ajax。这是一套基于Web的应用程序,旨在模拟和处理移动...

    Struts2分页-自定义标签-类似百度分页

    百度的分页设计简洁明了,易于用户操作,因此在Web应用中广泛模仿。 首先,让我们了解一下Struts2框架。Struts2是一个基于MVC(Model-View-Controller)架构的Java Web框架,它提供了强大的动作调度、结果映射、...

    axure后台管理系统通用模板.zip

    10. **学习资源**:此模板提供了一个学习平台,初学者可以通过分析和模仿模板中的设计思路和技巧,快速掌握后台管理系统的设计规范和Axure RP的使用方法。 总的来说,这个模板涵盖了后台管理系统设计的关键元素,...

    asp.net2.0 分页控件

    3. 分页事件:如PageIndexChanging事件,当用户点击分页按钮时触发,允许开发者执行相关的后台操作,如更新数据库查询。 4. 自定义分页:当内置的分页功能不能满足需求时,开发者可以创建自定义控件,如...

    datalist2种分页样式源码源数据库

    在这个项目中,我们关注的是“datalist2种分页样式源码源数据库”,它提供了两种分页样式:数字分页,模仿了百度和Google的分页效果,并且附带了源代码和源数据库。这个解决方案旨在实现一个无需额外控件的分页功能...

    struts2+hibernate模仿分页效果

    在 Struts2 中,Action 是处理用户请求的核心组件,通过配置 Action,可以实现分页所需的逻辑处理。以下是一段典型的 Action 配置代码: ```java private Integer id; private String content; private String ...

    联系人分级分页显示demo

    "联系人分级分页显示demo"就是一个很好的示例,它模仿了钉钉应用中的部门与联系人展示方式,提供了清晰、有组织的用户界面。在这个项目中,我们可以学到几个关键的技术点和设计原则。 首先,**通讯录管理**是系统的...

    wpf分页工具

    "wpf分页工具"是一个专门为WPF应用程序设计的控件,它模仿了网页常见的分页样式,为用户提供了一种直观、易用的方式来浏览和导航大量的数据集合。 在WPF中,数据分页通常是通过绑定数据源到UI元素来实现的,例如...

    vue后台管理框架vueElementUIaxios接入数据模仿segmentfault

    2. **ElementUI**:ElementUI是基于Vue.js设计的,提供了一系列精致的组件,如Table(表格)、Form(表单)、Pagination(分页)、Dialog(对话框)等,为开发者快速搭建美观的后台界面提供了便利。同时,ElementUI...

    mac风格Bootstrap后台模板

    2. **Mac风格设计**: Mac风格是指模仿Apple macOS操作系统用户界面的设计,它通常具有扁平化设计、明亮的色彩、简洁的线条和高对比度的图标。这种设计风格注重用户体验,力求直观易用,同时保持美学上的吸引力。 3....

    Bootstrap mac风格后台管理模板

    这个“Bootstrap mac风格后台管理模板”显然是基于Bootstrap框架,专门设计出的一种模仿苹果Mac操作系统的界面风格,旨在为用户提供一种熟悉且现代的用户体验。 模板通常包括各种页面布局、导航选项、表单组件、...

    分页 QQ菜单 jsp标签-noka3.9.zip

    QQ菜单通常指的是模仿QQ风格的导航菜单,而jsp标签则是一种在JavaServer Pages (JSP) 中简化HTML生成的机制,允许开发者用Java代码定义可重用的UI组件。`noka3.9`可能是这个项目或库的版本号,暗示这是一个升级版的...

    百度竞价排名项目

    【百度竞价排名项目】是一个基于ASP.NET、C#和.NET框架开发的项目,旨在模仿百度后台的竞价排名机制。这个项目虽然在功能上尚未完善,但仍包含了许多有价值的技术点,对于学习和理解Web应用程序开发有很好的参考价值...

    模仿微信5.0界面

    这个界面设计的重点在于实现用户在不同页面间的流畅滑动和切换,这通常涉及到视图分页器(ViewPager)和Fragment的集成使用。 【描述】:在Android应用开发中,"模仿微信5.0界面"的实现主要涉及以下几个关键点: 1...

    安卓FragmentTab选项卡相关-ViewPager仿微信分页导航多Activity载入.rar

    这个压缩包文件“安卓FragmentTab选项卡相关-ViewPager仿微信分页导航多Activity载入.rar”似乎提供了一个示例,展示了如何在Android应用中模仿微信的分页导航功能,同时使用多个Activity来承载内容。以下是对这些...

    模仿抖音的微信小程序,基于SSM的后台,基于SpringBoot的接口.zip

    【描述】提到“基于SSM的后台”,SSM是Spring、SpringMVC和MyBatis三个框架的简称,是Java Web开发中常用的组合。Spring框架负责管理应用的业务逻辑和依赖注入,SpringMVC处理HTTP请求和响应,MyBatis则作为持久层...

    仿新闻头条首页分页显示

    "仿新闻头条首页分页显示"这个项目是针对新闻类应用或网站的首页设计,模仿了像“新闻头条”这样的头部媒体平台的分页展示效果。这种设计通常包括顶部导航栏,用户可以通过滑动来切换不同的内容栏目,从而获取不同...

    模仿京东商城商品分类代码

    - 为了保持代码的可维护性和可读性,可以采用模块化编程,将功能划分为不同的组件,如分类导航组件、商品列表组件等。 - 使用现代JavaScript(如ES6)的特性,如`class`、`import/export`,可以更好地组织和复用...

    百度式下拉刷新框架

    "百度式下拉刷新框架"是一种专为移动应用设计的组件,它模仿了百度网站的下拉刷新交互体验,提供了更为流畅和人性化的用户界面。这个框架的核心目标是改进传统的下拉刷新机制,使其在手势识别和动画效果上更加合理和...

    Android 模仿微信导航页效果源码.zip

    项目中可能使用了Jetpack中的组件,如Room(数据库)、WorkManager(后台任务处理)、Paging(分页加载)等,来提升应用的性能和用户体验。 7. **自定义动画**: - 为了模仿微信的导航页效果,可能会在Fragment...

Global site tag (gtag.js) - Google Analytics