杰奇采集分页 php,杰奇自定义分页代码,教程及案例
在杰奇仿站的时候,分页区域的修改是不可避免的问题,但是基本上一开始完全就搞不懂修改分页的位置在哪里,而确实杰奇没有给出自定义的地方,相关的位置也是完全加密的。不过好不容易找到目录再解密之后,试了几下倒也是知道了修改的办法,难度不是很大就看能不能理解。
通常情况下,分页区域的代码是如下这样,感觉非常乱:
文件位置在/lib/html/page.php,这是加密的。
解密工具在这里:点击进入
解密之后,定义样式的关键代码如下:public function pageurl($page)
{
if (strpos($this->linkurl, "pagevar) === false) {
$url = $this->linkurl . $page;
}
else {
$url = str_replace(array("pagevar . "|subdirectory}>", "pagevar . "}>"), array(jieqi_getsubdir($page), $page), $this->linkurl);
}
if ($this->useajax == 1) {
$url = "javascript:Ajax.Update('" . urldecode($url) . "'," . $this->ajax_parm . ");";
}
return $url;
}
public function pagelink($page, $char, $class = "")
{
$link_url = $this->pageurl($page);
if (empty($class)) {
return "" . $char . "";
}
else {
return "" . $char . "";
}
}
public function first_page($link = 1, $char = "")
{
if ($char == "") {
$char = "1";
}
if ($link == 1) {
return $this->pagelink(1, $char, "first");
}
else {
return 1;
}
}
public function total_page($link = 1, $char = "")
{
if ($char == "") {
$char = $this->totalpages;
}
if ($link == 1) {
return $this->pagelink($this->totalpages, $char, "last");
}
else {
return $this->totalpages;
}
}
public function pre_page($char = "")
{
if ($char == "") {
$char = "<";
}
if (1 < $this->current) {
return $this->pagelink($this->current - 1, $char, "prev");
}
else {
return "";
}
}
public function next_page($char = "")
{
if ($char == "") {
$char = ">";
}
if ($this->current < $this->totalpages) {
return $this->pagelink($this->current + 1, $char, "next");
}
else {
return "";
}
}
public function num_bar()
{
$pagelinks = &$this->pagelinks;
$mid = floor($pagelinks / 2);
$last = $pagelinks - 1;
$current = &$this->current;
$totalpage = &$this->totalpages;
$linkurl = &$this->linkurl;
$minpage = (($current - $mid) < 1 ? 1 : $current - $mid);
$maxpage = $minpage + $last;
if ($totalpage < $maxpage) {
$maxpage = &$totalpage;
$minpage = $maxpage - $last;
$minpage = ($minpage < 1 ? 1 : $minpage);
}
$linkbar = "";
for ($i = $minpage; $i <= $maxpage; $i++) {
$char = $i;
if ($i == $current) {
$linkchar = "" . $char . "";
}
else {
$linkchar = $this->pagelink($i, $char);
}
$linkbar .= $linkchar;
}
return $linkbar;
}
public function pre_group($char = "")
{
$current = &$this->current;
$linkurl = &$this->linkurl;
$pagelinks = &$this->pagelinks;
$mid = floor($pagelinks / 2);
$minpage = (($current - $mid) < 1 ? 1 : $current - $mid);
$char = ($char == "" ? "<<" : $char);
$pgpage = ($pagelinks < $minpage ? $minpage - $mid : 1);
return $this->pagelink($pgpage, $char, "pgroup");
}
public function next_group($char = "")
{
$current = &$this->current;
$linkurl = &$this->linkurl;
$totalpage = &$this->totalpages;
$pagelinks = &$this->pagelinks;
$mid = floor($pagelinks / 2);
$last = $pagelinks;
$minpage = (($current - $mid) < 1 ? 1 : $current - $mid);
$maxpage = $minpage + $last;
if ($totalpage < $maxpage) {
$maxpage = &$totalpage;
$minpage = $maxpage - $last;
$minpage = ($minpage < 1 ? 1 : $minpage);
}
$char = ($char == "" ? ">>" : $char);
$ngpage = (($maxpage + $last) < $totalpage ? $maxpage + $mid : $totalpage);
return $this->pagelink($ngpage, $char, "ngroup");
}
public function jump_js()
{
if ($this->useajax == 1) {
$linkurl = urldecode($this->linkurl);
}
else {
$linkurl = $this->linkurl;
}
$pos = strpos($linkurl, "pagevar);
if ($pos === false) {
$urlcode = "'" . $linkurl . "'+this.parentNode.getElementsByTagName('input')[0].value";
}
else {
$urlcode = "'" . $linkurl . "'.replace('pagevar . "|subdirectory}>', '/' + Math.floor(this.parentNode.getElementsByTagName('input')[0].value / 1000)).replace('pagevar . "}>', this.parentNode.getElementsByTagName('input')[0].value)";
}
if ($this->useajax == 1) {
$js = "Ajax.Update(" . $urlcode . "," . $this->ajax_parm . ");";
}
else {
$js = "window.location.href=" . $urlcode . ";";
}
return $js;
}
public function more_js()
{
if ($this->current < $this->totalpages) {
$page = $this->current + 1;
if (strpos($this->linkurl, "pagevar) === false) {
$url = $this->linkurl . $page;
}
else {
$url = str_replace(array("pagevar . "|subdirectory}>", "pagevar . "}>"), array(jieqi_getsubdir($page), $page), $this->linkurl);
}
$js = "Ajax.Request('" . urldecode($url) . "',{onLoading:function(){},onComplete:function(){var c = document.getElementById('" . $this->pagecontents . "') ? document.getElementById('" . $this->pagecontents . "').innerHTML : null; document.getElementsByTagName('body')[0].innerHTML = this.response.match(/
]*>([\s\S]*)/i)[1]; if(typeof c == 'string') document.getElementById('" . $this->pagecontents . "').innerHTML = c + document.getElementById('" . $this->pagecontents . "').innerHTML;}});";
}
else {
$js = "this.parentNode.innerHTML = '';";
}
return $js;
}
这些代码分别定义了分页样式里面全部的标签和class,而且也是可删除的,但是我并不建议删除这些定义,直接修改它设置的标签或者calss即可,但是页面上的实际显示是由以下的代码定义。switch ($this->pagestyle) {
case 3:
$html_template = "
";
break;
case 2:
$html_template = "
";
break;
case 1:
default:
$html_template = "
";
break;
}
这里的代码就相当明显了,删除相应的地方,页面上就不会显示,或者也可以修改整个区块css。
比如我之前的分页显示是这样:
我修改了标签和class,自定义样式之后,是这样:
杰奇每个版本的这个文件都有所不同,而且1.7的话我的解密工具用不了,但是网上有开源版,找到这个文件覆盖就好了。
规则之树版权所有,转载注明来源
打赏
支付宝支付
您的大名:
1 元
5 元
10 元
20 元
50 元
100 元
万水千山总是情,给个打赏行不行。
打赏
原创文章,作者:不暇,如若转载,请注明出处:https://www.ruletree.club/archives/359/
杰奇采集分页 php,杰奇自定义分页代码,教程及案例相关推荐
- mybatis常见分页技术和自定义分页原理实战
文章目录 前言 mybatis简单了解 分页类型 分页方式 1.数组分页 2.数据库分页 3.Rowbounds分页 4.自定义插件分页 自定义分页原理 自定义分页实战 聊下第三方分页插件 pageH ...
- Django 分页组件替换自定义分页
Django的分页器(paginator) 总之不太好用我们还是用自己的好一些 自定义分页器 分页实现源码 """ 自定义分页组件 """c ...
- java自定义分页标签_自定义分页标签--仿javaeye分页效果
效果如图: 1.JSP规范1.1版本后增加了自定义标签库.实现自定义标签的步骤 (1)开发自定义标签处理类. (2)建立*.tld文件. (3)在web.xml中增加自定义标签的定义. (4)在jsp ...
- Mybatis实现自定义分页插件
mybatis自定义分页插件,步骤如下[文章末尾关注公众号获取完整代码]: (1)环境搭建 创建一个maven工程,然后引入mybatis依赖和mysql依赖即可. <dependency> ...
- 杰奇采集分页 php,修改杰奇1.7模板 给章节内容添加分页
在浏览小说的时候,章节内容太长,如果给内容进行分页呢,可以按照段落来进行分页,也可以按照字数进行分页,我就讲讲如何按照段落来进行分页吧,杰奇模板大多数都不带章节分页的,需要自己手动增加这个功能,可以用 ...
- Magento 自定义分页代码 How to change pagination design in product listing page in magen
I have worked in the template\catalog\product\list\toolbar.phtml where you can change the total tool ...
- GridView自定义分页导航
自己做的一个项目中所运用到的技术:| 1. 日历控件(带时分秒) 2. GridView 批量删除,自定义分页,定位页码 3. GridView 修改 ...
- Asp.net中DataGrid控件的自定义分页
使用实现起来虽然比较方便,但是效率不高,每次都需要读取所有页(整个记录集),而加载的只是其中一页,造成了资源的浪费,记录多又会使效率变得很低.下面通过DataGrid的自定义分页功能来减少资源使用和提 ...
- ASP.NET 2.0在SQL Server 2005上自定义分页
这篇文章讲述了如何利用SQL Server 2005的新特性来简单高效的实现分页.对于那些暂时还没用到SQL Server2005的人们,请看在大规模数据中的高效分页方法.如果需要,这篇文章会补上这里 ...
最新文章
- 第五章 业务架构,5.3 千亿访问量下的开放平台技术揭秘(作者:风胜)
- linux查找大文件
- 华为服务器型号查询,服务器设备型号查询
- android Mac OS X 中 VT/NX
- java栈和堆的区别_java 栈 和 堆 的区别
- C语言实现测量数据处理,求出实际值的范围
- 《STL源码剖析》--知识点
- oracle恢复某个表的数据库,如何从rman的全备份中恢复一张表?
- 学习SPI的一些疑惑
- 【数字图像处理】三.MFC实现图像灰度、采样和量化功能详解
- linux 修改文件名_Linux常用命令
- iphone图片等比缩放
- [LeetCode]15. 3Sum
- java代码题_精选20道Java代码笔试题
- SQLServer之深度分析Select
- flask-alchemy-pagination
- 50道编程小题目之【完数】
- html 模板 引用,模板引用说明
- 在线SVG转换,支持SVG to PNG、SVG to JPEG、SVG to WEBP 图片转换操作-toolfk程序员在线工具网
- vue项目html5调取手机摄像头录像并上传