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文件中可 ...
随机推荐
- Python无类再理解--metaclass,type
上次理解过一次,时间久了,就忘了.. 再学习一次.. http://blog.jobbole.com/21351/ ======================= 但是,Python中的类还远不止如此 ...
- poj 2236:Wireless Network(并查集,提高题)
Wireless Network Time Limit: 10000MS Memory Limit: 65536K Total Submissions: 16065 Accepted: 677 ...
- AspectFill VS. AspectFit
从去年10月进入公司,到现在差不多忙碌了3个月,期间几乎所有精力和时间都花在了公司的项目上,有很多工作学习的心得一直没有总结,趁周末无事就来使这写一写. 除了刚进公司的那一个月是做一些修修补补的工作, ...
- RSA 加解密算法
与DES不同,RSA算法中,每个通信主体都有两个钥匙,一个公钥一个私钥. 就是有2把钥匙1.使用publicKey可以对数据进行加密2.使用Key才能对数据进行解密单方向传输用公钥加密的数据,只有私钥 ...
- Grafana 安装
由于 Grafana 是存静态的,你只需要下载源代码解压,将它部署在 Nginx 上面就可以了,或者可以用 Python 的 SimpleHTTPServer 来跑 $ wget http://gra ...
- 2-01SQL的概述
SQL: Structured Query Languaage:结构化查询语言. 美国国家标准局ANSI. 国际标准化组织. T-SQL: Transact-SQL. T-SQL是SQL的扩展集. 对 ...
- apk 打包方式
1 项目-->Android tools -->Export Signed Application Package 2 在项目 manifest.xml文件下 单击“use the Ex ...
- MarkupExtension
目的 如果要在XAML里引用静态或动态对象实例,或在XAML中创建带有参数的类.这时,我们需要用到XAML扩展.XAML扩展常用来设定属性值.使用标识扩展,告诉 XAML 处理不要像通常那样将属性值 ...
- Quick-Cocos2dx 快速了解
set_dev_envirment // */ // ]]> Cocos2dx快速了解 1. Quick-Cocos2dx 开发环境搭建 1.1. 官网: 1.2. Github: 1.3. s ...
- Ubuntu中如何打开终端terminal
法一 先按住Alt,然后再按F2,出来一个运行框,在里面输入gnome-terminal即可 [编辑]法二 如果想从右键菜单中打开终端,需要安装一个软件: sudoapt-get install na ...