C#_简单实用的翻页
简单实用的生成翻页HTML辅助类
C#
using System.Text;
namespace ClassLibrary
{
/// <summary>
///
/// </summary>
public class PageTurning
{
#region 构造函数
/// <summary>
/// 翻页
/// </summary>
/// <param name="count">页码总量</param>
/// <param name="showCount">显示数量</param>
/// <param name="index">当前页码</param>
/// <param name="element">显示元素</param>
/// <param name="css">默认样式</param>
/// <param name="cssChecked">选中样式</param>
/// <param name="cssPageTurning">上一页下一页样式</param>
/// <param name="click">翻页事件</param>
public PageTurning(int count, int showCount, int index, string element, string css, string cssChecked, string cssPageTurning, string click)
{
this.Count = count;
this.ShowCount = showCount;
this.Index = index;
this.Element = element;
this.Css = css;
this.CssChecked = cssChecked;
this.CssPageTurning = cssPageTurning;
this.Click = click;
}
#endregion #region 参数
#region 基本参数
/// <summary>
/// 当前页码
/// </summary>
public int Index { get; set; }
/// <summary>
/// 页码总量
/// </summary>
public int Count { get; set; }
/// <summary>
/// 显示数量
/// </summary>
public int ShowCount { get; set; }
#endregion #region HTML参数
/// <summary>
/// 显示元素
/// </summary>
public string Element { get; set; }
/// <summary>
/// 默认样式
/// </summary>
public string Css { get; set; }
/// <summary>
/// 选中样式
/// </summary>
public string CssChecked { get; set; }
/// <summary>
/// 上一页下一页样式
/// </summary>
public string CssPageTurning { get; set; }
/// <summary>
/// 翻页事件
/// </summary>
public string Click { get; set; }
#endregion
#endregion #region 生成HTML #region 获取最大最小值
/// <summary>
/// 获取最大最小值
/// </summary>
/// <returns></returns>
private int[] GetMinMax()
{
int[] minMax = new int[];
if (Index < ShowCount + )//123...
{
minMax[] = ;
minMax[] = Count > (ShowCount * + ) ? (ShowCount * + ) : Count;
}
else if (Index > Count - * ShowCount + )//...678
{
minMax[] = Count - * ShowCount;
minMax[] = Count;
}
else//...345...
{
minMax[] = Index - ShowCount;
minMax[] = Index + ShowCount;
}
//防止出错
minMax[] = minMax[] < ? : minMax[];
minMax[] = minMax[] < Count ? minMax[] : Count;
minMax[]++;
return minMax;
}
#endregion #region 生成HTML
/// <summary>
/// 生成HTML
/// </summary>
/// <returns></returns>
public string Building()
{
var minMax = GetMinMax();
StringBuilder sb = new StringBuilder();
if (Index > )//加1...
{
sb.AppendFormat("<{0} class={1} onclick={2}>上一页</{0}>", Element, CssPageTurning, Click + "(" + (Index > ? Index - : ) + ")");
if (minMax[] > )
{
sb.AppendFormat("<{0} class={1} onclick={2}>1</{0}>", Element, Css, Click + "(1)");
if (minMax[] > )
{
sb.AppendFormat("<{0} class={1}>...</{0}>", Element, Css);
}
}
}
while (minMax[] < minMax[])//1...345...7
{
sb.AppendFormat("<{0} class={1} onclick={2}>{3}</{0}>", Element, minMax[] != Index ? Css : CssChecked, minMax[] != Index ? Click + "(" + minMax[] + ")" : "", minMax[]);
minMax[]++;
}
if (Index < Count)//加..7
{
if (minMax[] < Count + )
{
if (minMax[] < Count)
{
sb.AppendFormat("<{0} class={1}>...</{0}>", Element, Css);
}
sb.AppendFormat("<{0} class={1} onclick={2}>{3}</{0}>", Element, Css, Click + "(" + Count + ")", Count);
}
sb.AppendFormat("<{0} class={1} onclick={2}>下一页</{0}>", Element, CssPageTurning, Click + "(" + (Count > Index ? Index + : Count) + ")");
}
return sb.ToString();
}
#endregion
#endregion
}
}
调用
public string get(int index)
{
PageTurning pt = new PageTurning(20,1,index,"a","aa","bb","cc","aaaaa");
return pt.Building();
}
HTML实例
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<script src="~/Scripts/jquery-1.8.2.min.js"></script>
<script>
$(function () {
aaaaa(22)
})
function aaaaa(pIndex) {
$("div").load("/test/get", { index: pIndex });
}
</script>
<style>
.aa {
cursor: pointer;
display: block;
border: 1px solid black;
width: 22px;
height: 24px;
float: left;
margin-left: 4px;
} .bb {
cursor: pointer;
display: block;
border: 1px solid black;
width: 22px;
height: 24px;
float: left;
margin-left: 4px;
background-color: pink;
} .cc {
cursor: pointer;
display: block;
border: 1px solid black;
width: 60px;
height: 24px;
float: left;
margin-left: 4px;
background-color: orange;
}
</style>
</head>
<body>
<div></div>
</body>
</html>
效果图
C#_简单实用的翻页的更多相关文章
- 简单做出HTML5翻页效果文字特效
之前在网上看到一款比较有新意的HTML5文字特效,文字效果是当鼠标滑过是出现翻开折叠的效果,类似书本翻页.于是我兴致勃勃的点开源码看了一下,发现其实实现也挺简单的,主要利用了CSS3的transfor ...
- 简单3D翻页相册制作教程
3D效果看起来总是要比平面的图形看起来视觉效果要好的多,今天来教大家制作简单的3D翻页效果的视频. 视频预览链接:https://v.youku.com/v_show/id_XMzgxOTY5NzQz ...
- Android 实现书籍翻页效果----升级篇
自从之前发布了<Android 实现书籍翻页效果----完结篇 >之后,收到了很多朋友给我留言,前段时间由于事情较多,博客写得太匆忙很多细节地方没有描述清楚.所以不少人对其中的地方有不少不 ...
- vue2.X简单翻页/分页
由于业务需要 公司把后台所有数据一次性给前端,数据过多,所以前端需要做一些分页的处理,比较简单的翻页. html代码 <table class="three_td"> ...
- python爬虫_入门_翻页
写出来的爬虫,肯定不能只在一个页面爬,只要要爬几个页面,甚至一个网站,这时候就需要用到翻页了 其实翻页很简单,还是这个页面http://bbs.fengniao.com/forum/10384633. ...
- swift:简单使用翻页控制器UIPageViewController
一.小叙 UIPageViewController是一个实现图书阅读的控制器,使用它可以设置书脊位置.单双页.过渡效果等,它是通过代理的方式来实现翻页,也即上一页.下一页.最终这个UIPageView ...
- jquery翻页turnjs简单实例
jquery翻页turnjs简单实例<pre><div id="flipbook"> <div class="hard" styl ...
- (java)selenium webdriver学习---实现简单的翻页,将页面内容的标题和标题链接取出
selenium webdriver学习---实现简单的翻页,将页面内容的标题和标题链接取出: 该情况适合能能循环page=1~n,并且每个网页随着循环可以打开的情况, 注意一定是自己拼接的url可以 ...
- 动画:UIKitAnimation 简单动画学习 iOS (一) 渐变 、 移动 、翻页、来回翻转 ——转载
转载请说明(谢谢) http://blog.csdn.net/a21064346/article/details/7851695 点击打开链接 以下 一个系列的 动画效果 在 UIView.h文件中可 ...
随机推荐
- 算法系列:CSAPP 推荐
转载自:https://book.douban.com/review/6093947/ 如果你觉得这本书过于厚重担心看不下来的话,不妨跟着coursera的Hardware/Software Inte ...
- Metrics介绍
Metrics可以为你的代码的运行提供无与伦比的洞察力.作为一款监控指标的度量类库,它提供了很多模块可以为第三方库或者应用提供辅助统计信息, 比如Jetty, Logback, Log4j, Apac ...
- Linux 下编译自己的 OpenJDK7 包括JVM和JDK API
1.首先去 这里 http://download.java.net/openjdk/jdk7/ 下载OpenJDK7的源码zip包 2. 简要介绍下OpenJDK7中的目录 hotspot: 放有Op ...
- gitlab安装部署
参考文章: https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/install/centos http://www.xsjxmx.com/ ...
- HP SAN Switch光纖交換機命令行畫zone
有時候我們無法登陸網頁交互界面去操縱交換機,如下提供了命令行方式從交換機劃zone 1.創建別名 alicreate "SummaryDB_N", "211,14; 21 ...
- WPF MVVM初体验
首先MVVM设计模式的结构, Views: 由Window/Page/UserControl等构成,通过DataBinding与ViewModels建立关联: ViewModels:由一组命令,可以绑 ...
- 10 个学习iOS开发的最佳网站(转)
10 个学习iOS开发的最佳网站 作者 jopen 2012-09-26 08:59:56 1) Apple Learning Objective C Objective-C,通常写作ObjC和较少用 ...
- scrollview嵌套listview 滑动事件冲突的解决方法
listView.setOnTouchListener(new View.OnTouchListener() { @Override ...
- ERROR Shell: Failed to locate the winutils binary in the hadoop binary path
文章发自:http://www.cnblogs.com/hark0623/p/4170172.html 转发请注明 14/12/17 19:18:53 ERROR Shell: Failed to ...
- HDU 5867 Sparse Graph (2016年大连网络赛 I bfs+补图)
题意:给你n个点m条边形成一个无向图,问你求出给定点在此图的补图上到每个点距离的最小值,每条边距离为1 补图:完全图减去原图 完全图:每两个点都相连的图 其实就是一个有技巧的bfs,我们可以看到虽然点 ...