简单来说,情况是这样的,假如做好了对动漫每一集进行分页,如下图:

  但当分页太多就会变得不能看,而且前后箭头也不能只是摆设。

  想要得到类似这样效果:

  网上搜了一会翻页相关的库没什么效果,也不太合适自己的项目应用。

  于是决定自己写一个。

  pageturn.js:

function get_segment(aid, size) {
var start = 0, end = 0;
var count_switch = true;
for (var i = 1; i <= size; i++) {
if (document.getElementById(aid + i.toString()).style.display != 'none') {
if (count_switch) {
start = i;
count_switch = false;
}
else {
end = i;
}
}
}
return [start, end];
}; function prev_page_turn(aid, start, end, step) {
for (var i = 0; i < step; i++) {
if (start == 1)
break; $("#" + aid + end.toString()).hide(500); start -= 1; $("#" + aid + start.toString()).show(500); end -= 1;
}
}; function next_page_turn(aid, start, end, step, size) {
for (var i = 0; i < step; i++) {
if (end == size)
break; $("#" + aid + start.toString()).hide(500); end += 1; $("#" + aid + end.toString()).show(500); start += 1;
}
};

  # 用法见 31 line

  test.html:

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="pageturn.js"></script>
</head> <body>
<ul class="pagination">
<li><a id="prev-page">«</a></li>
<li><a href="#" id="av8299421" title="夢ちゃん">第 1 集</a></li>
<li><a href="#" id="av8299422" title="夢ちゃん">第 2 集</a></li>
<li><a href="#" id="av8299423" title="夢ちゃん">第 3 集</a></li>
<li><a href="#" id="av8299424" title="夢ちゃん">第 4 集</a></li>
<li><a href="#" id="av8299425" title="夢ちゃん">第 5 集</a></li>
<li><a href="#" id="av8299426" title="夢ちゃん" style="display:none">第 6 集</a></li>
<li><a href="#" id="av8299427" title="夢ちゃん" style="display:none">第 7 集</a></li>
<li><a href="#" id="av8299428" title="夢ちゃん" style="display:none">第 8 集</a></li>
<li><a href="#" id="av8299429" title="夢ちゃん" style="display:none">第 9 集</a></li>
<li><a href="#" id="av82994210" title="夢ちゃん" style="display:none">第 10 集</a></li>
<li><a href="#" id="av82994211" title="夢ちゃん" style="display:none">第 11 集</a></li>
<li><a href="#" id="av82994212" title="夢ちゃん" style="display:none">第 12 集</a></li>
<li><a href="#" id="av82994213" title="夢ちゃん" style="display:none">第 13 集</a></li>
<li><a href="#" id="av82994214" title="夢ちゃん" style="display:none">第 14 集</a></li>
<li><a id="next-page">»</a></li>
</ul>
<script type="text/javascript">
$(document).ready(function () {
var size = 14; // 集数
var aid = "av829942"; // 视频 id 前缀
var prev_click = true;
var next_click = true;
$('#prev-page').bind('click', function () {
if (prev_click) {
prev_click = false;
var get_value = get_segment(aid, size);
var start = get_value[0], end = get_value[1]; if (start > 1) {
prev_page_turn(aid, start, end, 3);
}
setTimeout(function () {
prev_click = true;
}, 500);
}
});
$('#next-page').bind('click', function () {
if (next_click) {
next_click = false;
var get_value = get_segment(aid, size);
var start = get_value[0], end = get_value[1]; if (end < size) {
next_page_turn(aid, start, end, 3, size);
}
setTimeout(function () {
next_click = true;
}, 500);
}
});
});
</script>
</body> </html>

  可自行配制 step 来控制点一次的翻页速度。

js + jquery 实现分页区翻页的更多相关文章

  1. jquery.Table实现的翻页功能比较完整漂亮,本想扩展个模版DIV

    jquery.dataTable实现的翻页功能比较完整漂亮,本想提取其的翻页部分,再结合模版DIV,bootstrop实现聊天记息的展示. jquery.Table 与table结合的较紧,不能在很下 ...

  2. JeeSite数据分页与翻页

    本文章介绍的是JeeSite开源项目二次开发时的一些笔记,对于没有使用过JeeSite的可以不用往下看了,因为下面的代码是跟JeeSite二次开发相关的代码,不做JeeSite的二次开发,以下代码对您 ...

  3. JS调用水晶报表打印翻页按钮事件

    默认的水晶报表打印按钮.翻页按钮太小,并且样式不好调整,考虑自己做一个按钮,然后调用水晶报表的按钮事件. 在实际操作中发现可以在.net按钮的服务器端事件中调用翻页方法: CrystalReportV ...

  4. turn.js中文API 写一个翻页效果的参数详细解释

    $('.flipbook').turn({     width: 922,     height: 600,     elevation: 50,     gradients: true,     a ...

  5. jquery easyui datagrid 在翻页以后仍能记录被选中的行及刷新设置选中行数据

    //easyUI的datagrid在复选框多选时,如何在翻页以后仍能记录被选中的行://注意datagrid中需要配置idField属性,一般为数据的主键 $.ajax({ type: 'GET', ...

  6. 使用switchPage.js插件jQuery全屏滚动翻页

    1. 先引入jquery.js,再引入switchPage.js 文件地址:点击打开链接 <script src="jquery.min.js"></script ...

  7. jquery css3问卷答题卡翻页动画效果

    这个选项调查的特效以选项卡的形式,每答完一道题目自动切换到下一条,颇具特色.使用jQuery和CSS3,适合HTML5浏览器. 效果展示 http://hovertree.com/texiao/jqu ...

  8. 织梦DEDECMS网站首页如何实现分页翻页

    织梦DEDECMS模板网站首页如何实现首页分页和翻页 方法如下:(三种方法,自己选择一种来实现分页吧) 第一种:调用ajax和参数的(不推荐)1.必须在DEDE首页模板中的<head>&l ...

  9. asp.net中应用JQuery.pagination分页

    JQuery.pagination这款分页控件非常好用,可实现无刷新分页,为了方便下次做项目便于拷贝,所以在此发布一下,具体的实现流程如下: 效果图: JQuery.pagination的各个参数的说 ...

随机推荐

  1. Intellij IDEA史上最全快捷键大全

    古人有云:工欲善其事,必先利其器,要是只是手握利器,而不能发挥其最大的效益,那无异于赤手空拳,对敌对垒. 那古人所云,未得其精髓,只能为碎语闲言尔. 自动代码 常用的有fori/sout/psvm+T ...

  2. python3练习100题——033

    链接:http://www.runoob.com/python/python-exercise-example33.html 题目:按逗号分隔列表. l=[1,2,3,4] k=1 for i in ...

  3. PyQt5+Eric6开发的一个使用菜单栏、工具栏和状态栏的示例

    前言 在做一个数据分析的桌面端程序遇到一些问题,这里简单整理下,分享出来供使用者参考. 1.网上查使用PyQt5工具栏的示例,发现很多只是一个简单的退出功能,如果有几个按钮如何处理?如何区分点击的究竟 ...

  4. 'ssh-keygen' 不是内部或外部命令,也不是可运行的程序

    右键我的电脑,点击环境变量,设置系统配置里面的Path 新增一个 D:\ruanjiananzhuangdizhi\Git\usr\bin 路径就可以了

  5. 还不错的Table样式和form表单样式

    作为一个后台开发人员而言,拥有一套属于自己的前台样式是比较重要的,这里分享一下自己感觉还不错的样式,以后遇到好的,还会陆续添加 上图: 带鼠标滑动效果的table样式看起来比较清爽 样式 <he ...

  6. n皇后问题(dfs-摆放问题)

    你的任务是,对于给定的N,求出有多少种合法的放置方法. Input共有若干行,每行一个正整数N≤10,表示棋盘和皇后的数量:如果N=0,表示结束.Output共有若干行,每行一个正整数,表示对应输入行 ...

  7. date-fns时间库的基本使用

    在react中使用date-fns: import sub_days from 'date-fns/sub_days'; import start_of_week from 'date-fns/sta ...

  8. MyBatis 动态代理开发

    MyBatis 动态代理开发 §  Mapper.xml文件中的namespace与mapper接口的类路径相同. §  Mapper接口方法名和Mapper.xml中定义的每个statement的i ...

  9. open函数 文件设置缓冲

    # 注释 将文件写入硬件设备时,使用系统调用,这类I/O操作一般时间很长 # 为了减少I/O次数操作,文件通常使用缓冲区(有足够的数据才进行系统调用) # 文件缓冲行为分为: # 全缓冲: open函 ...

  10. root xshell登陆Ubuntu

    https://www.jianshu.com/p/c8ee39488d2a xshell测试非root用户,可以正常连接,但是root用户仍旧无法访问 解决方法:修改 /etc/ssh/sshd_c ...