Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
街头小贩
jforum
提交
7fd27759
J
jforum
项目概览
街头小贩
/
jforum
通知
2
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jforum
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
7fd27759
编写于
9月 29, 2020
作者:
街头小贩
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
同步bs4 风格用的js
上级
f06eef19
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
341 addition
and
57 deletion
+341
-57
trident/src/main/webapp/static/js/app.js
trident/src/main/webapp/static/js/app.js
+9
-0
trident/src/main/webapp/static/js/bs4/forum.core.js
trident/src/main/webapp/static/js/bs4/forum.core.js
+67
-57
trident/src/main/webapp/static/js/bs4/jquery.pagination.plug.js
...t/src/main/webapp/static/js/bs4/jquery.pagination.plug.js
+265
-0
未找到文件。
trident/src/main/webapp/static/js/app.js
浏览文件 @
7fd27759
...
...
@@ -907,6 +907,15 @@ jQuery(function($){
try
{
$
(
'
select.select2
'
).
select2
();
}
catch
(
e
){}
//
$
(
"
.datetimepicker
"
).
datetimepicker
({
autoclose
:
true
,
componentIcon
:
'
.mdi.mdi-calendar
'
,
navIcons
:{
rightIcon
:
'
mdi mdi-chevron-right
'
,
leftIcon
:
'
mdi mdi-chevron-left
'
}
});
$
(
'
#smiley_pic_jsonp_select
'
).
on
(
"
select2:select
"
,
function
(
e
){
var
picFile
=
e
.
params
.
data
.
id
;
//文件名
var
themeDirect
=
$
(
'
select[name=themeDirect]
'
).
find
(
'
option:selected
'
).
val
();
//风格目录名
...
...
trident/src/main/webapp/static/js/bs4/forum.core.js
浏览文件 @
7fd27759
...
...
@@ -159,11 +159,39 @@ function parseQueryJson(dataQueryVal){
data
[
tmp
[
0
].
trim
()]
=
tmp
[
1
].
trim
();
})
return
data
;
}
}
;
//话题的快速回复
function
buildRichEditor
(
jqEle
){
jqEle
.
find
(
'
[data-richEditor="CKEditor"]
'
).
trigger
(
'
initEvent
'
);
};
function
buildEditorMessage
(
errJson
){
//在线吗
var
cam
=
getCurrentActiveMemberInfo
();
var
t
=
'
<div class="topic_posts_item main-color">
'
+
'
<dl class="topic_posts_item_left">
'
+
'
<dt style="padding-top: 20px;padding-left: 20px;width:180px">
'
+
'
<div class="posts-member-avatar">
'
+
'
<div class="avatar">
'
+
'
<img class="avatar" src="
'
+
BASE
+
'
/avatar/empty.png" alt="User avatar" />
'
+
'
</div>
'
+
'
</div>
'
+
'
</dt>
'
+
'
</dl>
'
+
'
<div class="topic_posts_item_right h260">
'
+
'
<div class="posts-body">
'
+
'
<h5 class="hl45 default-txt-color">快速回复</h5>
'
+
'
<div id="block-paper">
'
+
'
<p>
'
+
errJson
.
message
;
if
(
jQuery
.
isEmptyObject
(
cam
)
||
parseInt
(
cam
.
id
)
<
1
){
t
+=
'
<a href="
'
+
BASE
+
'
/member/login">登录</a> | <a href="
'
+
BASE
+
'
/member/register">注册</a>
'
;
}
t
+=
'
</p></div>
'
+
'
</div>
'
+
'
</div>
'
+
'
</div>
'
$
(
'
#quick_reply_posts
'
).
removeClass
(
'
ld-over running
'
).
find
(
'
div.ld
'
).
remove
();
$
(
'
#quick_reply_posts
'
).
append
(
t
);
}
//底部的版块导航
function
buildBoardNavigateSelect
(
json
){
//生成select
...
...
@@ -243,7 +271,7 @@ function drawMemberPanel(json, jqueryEle){ //[NW]
};
//是否要去拉取数据,客户端缓存的cookie标记是否过期了
function
getMemberVerify
(){
var
verify
=
Cookies
.
get
(
'
msa
'
)
||
-
1
;
var
verify
=
Cookies
.
get
(
'
msa
'
)
||
-
1
;
return
verify
;
};
//客户端缓存的cookie标记未过期时更新会员的信息到哪取
...
...
@@ -272,7 +300,7 @@ function drawMemberInfo(json, jqueryEle){
+
'
<a href="{APP}/member/{id}.xhtml" title="会员主页"><img class="img-circle" src="{APP}/member/avatar/{id}.png" style="width:100px;height:100px"/></a>
'
+
'
</div>
'
+
'
<div class="text-center member_embed_info">
'
+
'
<h5><a href="{APP}/member/home
" title="会员中心" class="member-{roleNam
e}">{nickname}</a></h5>
'
+
'
<h5><a href="{APP}/member/home
/" title="会员中心" class="member-{styl
e}">{nickname}</a></h5>
'
+
'
<div class="row">
'
+
'
<dl class="col-xs-6 col-sm-4"><dt>{status}</dt><dd>状态</dd></dl>
'
+
'
<dl class="col-xs-6 col-sm-4"><dt>{group}</dt><dd>组</dd></dl>
'
...
...
@@ -437,6 +465,17 @@ function drawBoardModeratorList(json, element){
Mustache
.
parse
(
T
,
[
'
{
'
,
'
}
'
]);
$
(
element
).
append
(
Mustache
.
render
(
T
,
$
.
extend
(
data
,
{
"
APP
"
:
BASE
})));
}
//大版主列表
function
drawBoardGroupModeratorList
(
json
,
element
){
var
data
=
{};
data
.
result
=
json
;
var
T
=
''
+
'
{#result}
'
+
'
<dl class="d-inline-block p-2"><dt><img src="{APP}/member/avatar/{id}.png" width="32px" height="32px"/></dt><dd><a href="{APP}/member/{id}.xhtml">{title}</a></dd></dl>
'
+
'
{/result}
'
;
Mustache
.
parse
(
T
,
[
'
{
'
,
'
}
'
]);
$
(
element
).
append
(
Mustache
.
render
(
T
,
$
.
extend
(
data
,
{
"
APP
"
:
BASE
})));
}
//版块内容页的置顶话题列表[NW][7]
function
drawBoardTopSectionTopic
(
data
,
element
){
var
currentId
=
"
dynamic-section-
"
+
randomAlphaNumeric
(
8
);
...
...
@@ -566,29 +605,6 @@ function loadBoardStatsResult(json, element){
}
});
};
//{"date":{"year":2019,"month":4,"day":14},"time":{"hour":12,"minute":38,"second":32,"nano":0}}
//构造日期格式:YYYY-MM-DD HH:MM:SS
function
buildStatsDate
(
json
){
if
(
jQuery
.
isEmptyObject
(
json
)){
return
''
;
}
var
temp
=
'
%Y%-%M%-%D% %HH%:%MM%:%SS%
'
;
try
{
return
temp
.
replace
(
'
%Y%
'
,
json
.
date
.
year
)
.
replace
(
'
%M%
'
,
json
.
date
.
month
)
.
replace
(
'
%D%
'
,
json
.
date
.
day
)
.
replace
(
'
%HH%
'
,
json
.
time
.
hour
)
.
replace
(
'
%MM%
'
,
json
.
time
.
minute
)
.
replace
(
'
%SS%
'
,
json
.
time
.
second
);
}
catch
(
e
){
return
temp
.
replace
(
'
%Y%
'
,
json
.
year
)
.
replace
(
'
%M%
'
,
json
.
monthValue
)
.
replace
(
'
%D%
'
,
json
.
dayOfMonth
)
.
replace
(
'
%HH%
'
,
json
.
hour
)
.
replace
(
'
%MM%
'
,
json
.
minute
)
.
replace
(
'
%SS%
'
,
json
.
second
);
}
};
//版块主页的 汇总统计
function
getBoardStats
(
pURI
){
var
def
=
$
.
Deferred
();
...
...
@@ -793,8 +809,8 @@ function buildMemberProfileMenu(json, jqEle){
jqEle
.
popover
({
placement
:
'
right
'
,
title
:
''
,
html
:
true
,
trigger
:
'
focus
'
,
trigger
:
'
focus
'
,
html
:
true
,
content
:
menuContent
});
jqEle
.
popover
(
'
show
'
);
...
...
@@ -896,6 +912,7 @@ function packAlbumHoldSection(json){
function
buildMenuList
(
json
){
var
jqEle
=
$
(
'
#
'
+
json
.
element
);
var
T
=
''
;
var
tmpSize
=
1
;
var
kt
=
Object
.
keys
(
json
.
result
).
length
;
$
.
each
(
json
.
result
,
function
(
key
,
value
){
//公共|私有
$
.
each
(
value
,
function
(
index
,
item
){
//连接
var
tmp
;
...
...
@@ -1119,22 +1136,8 @@ function newTagHandler(json){
};
//UID检查的回调
function
uidDetectionHandler
(
nickname
,
jqEle
){
jqEle
.
removeClass
(
'
has-error
'
);
jqEle
.
find
(
'
input[name=uid]
'
).
removeAttr
(
"
disabled
"
);
if
(
$
(
'
#acc-tip
'
).
length
==
1
){
$
(
'
#acc-tip
'
).
find
(
'
input[name=snames]
'
).
val
(
nickname
);
return
;
}
var
T
=
''
+
'
<div class="form-group">
'
+
'
<label class="col-sm-2 control-label">会员:</label>
'
+
'
<div class="col-sm-10">
'
+
'
<input type="text" name="snames" class="inputbox no-radius form-control w600" value="%NN%" readonly="readonly" />
'
+
'
</div>
'
+
'
</div>
'
;
T
=
T
.
replace
(
'
%NN%
'
,
nickname
);
$
(
T
).
attr
(
'
id
'
,
'
acc-tip
'
).
insertAfter
(
jqEle
);
jqEle
.
find
(
'
input[name=uid]
'
).
removeAttr
(
"
disabled
"
).
removeClass
(
'
is-invalid
'
);
$
(
'
#suggest-uid
'
).
parents
(
'
form
'
).
find
(
'
input[name=snames]
'
).
val
(
nickname
);
};
//获取JS.Store缓存的值
function
getActionCacheStore
(
json
){
...
...
@@ -1378,7 +1381,7 @@ jQuery(function($){
$
(
'
input[name=id]:checkbox
'
).
on
(
'
click
'
,
function
(){
$
(
this
).
parents
(
'
tr
'
).
toggleClass
(
'
active
'
);
});
//引用
//引用
@20200506
$
(
'
body
'
).
on
(
'
click
'
,
'
.post-action-quote
'
,
function
(){
var
self
=
$
(
this
);
var
options
=
parseQueryJson
(
self
.
attr
(
'
data-query
'
));
...
...
@@ -1386,13 +1389,13 @@ jQuery(function($){
if
(
jQuery
.
isEmptyObject
(
json
)){
return
errorMessage
(
'
读取原文内容失败
'
);
}
if
(
json
.
errors
){
return
errorMessage
(
json
.
errors
);
if
(
json
.
level
===
'
err
'
){
return
errorMessage
(
json
.
message
);
}
if
(
json
.
infoTip
){
insertEditorHtml
(
''
);
$
(
'
#reply-tip-message
'
).
html
(
'
<strong>提示!</strong>
'
+
json
.
infoTip
);
//插入到表单中
//插入到表单中
@20200506
$
(
'
#quick_reply_form
'
).
find
(
'
input[name=quote]
'
).
val
(
json
.
quote
);
$
(
'
#quick_reply_form
'
).
find
(
'
input[name=scale]
'
).
val
(
json
.
scale
);
}
...
...
@@ -1489,7 +1492,7 @@ jQuery(function($){
});
return
false
;
}).
trigger
(
'
checkEvent
'
);
//快速回复[NW]
//快速回复[NW]
@20200506
$
(
'
#quick_reply_posts
'
).
on
(
'
submit
'
,
'
#quick_reply_form
'
,
function
(
e
){
e
.
preventDefault
();
var
self
=
$
(
this
);
...
...
@@ -1585,19 +1588,20 @@ jQuery(function($){
return
false
;
});
//uid[NW]
$
(
'
body
'
).
on
(
'
mouseleave
'
,
'
#suggest-uid
'
,
function
(
e
){
var
self
=
$
(
this
);
$
(
'
body
'
).
on
(
'
click
'
,
'
#suggest-btn
'
,
function
(
e
){
var
self
=
$
(
'
#suggest-uid
'
);
var
p
=
self
.
parents
(
'
.form-group
'
);
if
(
isBlank
(
self
.
val
())){
errorMessage
(
'
输入收件人的UID
'
);
self
.
attr
(
'
placeholder
'
,
'
输入收件人的UID
'
).
focus
(
);
return
;
}
self
.
attr
(
"
disabled
"
,
"
disabled
"
);
$
.
getJSON
(
$
(
this
)
.
attr
(
'
data-handler
'
),
'
value=
'
+
self
.
val
(),
function
(
data
){
$
.
getJSON
(
self
.
attr
(
'
data-handler
'
),
'
value=
'
+
self
.
val
(),
function
(
data
){
if
(
data
.
level
===
'
acc
'
){
uidDetectionHandler
(
data
.
message
,
p
);
}
else
{
p
.
addClass
(
'
has-error
'
).
find
(
'
input[name=uid]
'
).
removeAttr
(
"
disabled
"
).
focus
();
$
(
'
input[name=snames]
'
).
val
(
''
);
self
.
addClass
(
'
is-invalid
'
).
removeAttr
(
"
disabled
"
).
focus
();
}
});
});
...
...
@@ -1700,8 +1704,7 @@ jQuery(function($){
return
this
.
value
;
}).
get
().
join
(
"
,
"
);
if
(
isBlank
(
idString
)){
errorMessage
(
'
请选择要操作的消息
'
);
return
;
return
errorMessage
(
'
请选择要操作的消息
'
);
}
$
.
ajax
({
url
:
requestURI
,
...
...
@@ -1943,6 +1946,7 @@ jQuery(function($){
}
});
}).
trigger
(
'
loadDataEvent
'
);
//创建话题:初始化版块[NW]
$
(
'
#asyn-board-select
'
).
on
(
'
initDataEvent
'
,
function
(){
var
self
=
$
(
this
);
...
...
@@ -2014,7 +2018,7 @@ jQuery(function($){
if
(
jQuery
.
isEmptyObject
(
data
)){
return
;
}
//
drawSpaPageMenu(data);
//
var
T
=
'
<div id="toc">
'
+
'
<div id="toctitle">{term}</div>
'
+
'
<div id="tocbot">
'
...
...
@@ -2147,6 +2151,12 @@ jQuery(function($){
}
self
.
addClass
(
'
ld-over running
'
);
self
.
load
(
rawdata
.
uri
+
'
body
'
,
function
(
response
,
status
,
xhr
){
try
{
var
err
=
$
.
parseJSON
(
response
);
if
(
err
.
level
&&
err
.
level
===
'
err
'
){
return
(
window
[
self
.
attr
(
'
data-error-function
'
)]).
call
(
this
,
err
);
}
}
catch
(
e
){}
self
.
append
(
response
);
self
.
removeClass
(
'
ld-over running
'
);
try
{
...
...
trident/src/main/webapp/static/js/bs4/jquery.pagination.plug.js
0 → 100644
浏览文件 @
7fd27759
/**
* jquery 动态分页
* Copyright (c) 2019 xiaofanku
* build on jQuery 3.2.1 & BootStrap v3
* @author xiaofanku <xiaofanku@live.cn>
* @version 0.0.1 - 20191212
*
*/
(
function
(
$
)
{
'
use strict
'
;
var
pagination
=
{
/**
* 计算有多少页
* @param {number} totalRecords - 总记录数
* @param {number} pageSize - 每页显示的记录数
* @returns {Object}
*/
getTotalPage
:
function
(
totalRecords
,
pageSize
){
var
tp
=
1
;
if
(
totalRecords
>
pageSize
){
var
tp
=
Math
.
floor
(
totalRecords
/
pageSize
);
if
(
totalRecords
%
pageSize
!==
0
){
tp
+=
1
;
}
}
return
{
pageSize
:
pageSize
,
pages
:
tp
,
records
:
totalRecords
};
},
/**
* 获取数据
* @param {string} requestURI - 异步请求的地址
* @param {string} dataType - 请求的数据类型, json|jsonp
* @param {number} pageSize - 每页显示的记录数
* @param {number} page - 当前页码值
* @param {Object} jqEle - 当前的jQuery元素
*/
getData
:
function
(
requestURI
,
dataType
,
pageSize
,
page
,
jqEle
){
var
self
=
this
;
//self.disable();
var
formatAjaxParams
=
{
type
:
'
get
'
,
cache
:
false
,
data
:
{},
contentType
:
'
application/x-www-form-urlencoded; charset=UTF-8
'
,
dataType
:
dataType
,
async
:
true
,
timeout
:
3000
};
formatAjaxParams
.
url
=
requestURI
;
var
postData
=
{};
postData
.
pageSize
=
pageSize
;
postData
.
pageNumber
=
page
;
$
.
extend
(
formatAjaxParams
.
data
||
{},
postData
);
formatAjaxParams
.
success
=
function
(
response
){
var
a
=
self
.
getTotalPage
(
response
.
total
,
pageSize
);
// gtx.range=页码范围
// a.pages=总页数
var
b
=
self
.
calc
(
page
,
5
,
a
.
pages
);
self
.
render
(
b
.
start
,
b
.
end
,
page
,
a
.
pages
,
jqEle
);
if
(
$
.
isFunction
(
self
.
jsonCallbackHandler
)){
self
.
jsonCallbackHandler
(
response
.
result
);
}
//滚动到顶部
$
(
'
html, body
'
).
animate
({
scrollTop
:
0
},
500
);
console
.
log
(
'
[pagination] scroll is top
'
);
};
formatAjaxParams
.
error
=
function
(
jqXHR
,
textStatus
,
errorThrown
){
};
formatAjaxParams
.
beforeSend
=
function
(
xhr
)
{
if
(
$
.
isFunction
(
self
.
ajaxBeforeHandler
)){
self
.
ajaxBeforeHandler
(
xhr
);
}
console
.
log
(
'
[pagination] ajax before send exec
'
);
};
formatAjaxParams
.
complete
=
function
(
xhr
,
textStatus
)
{
if
(
$
.
isFunction
(
self
.
ajaxCompleteHandler
)){
self
.
ajaxCompleteHandler
(
xhr
,
textStatus
);
}
//记入历史
recordHistory
(
page
,
pageSize
);
console
.
log
(
'
[pagination] ajax is complete
'
);
};
$
.
ajax
(
formatAjaxParams
);
},
/**
* 绑定翻页事件
* @param {Object} page - 所有的配置参数
* @param {Object} jqEle - 当前的jQuery元素
*/
bindEvent
:
function
(
finalConfig
,
jqEle
){
var
self
=
this
;
$
(
'
body
'
).
on
(
'
click
'
,
'
a.previous-btn,a.next-btn
'
,
function
(
e
){
e
.
stopPropagation
();
//
var
_pageNumber
=
$
(
this
).
parent
().
attr
(
'
data-num
'
);
self
.
getData
(
finalConfig
.
url
,
finalConfig
.
dataType
,
finalConfig
.
pageSize
,
parseInt
(
_pageNumber
),
jqEle
);
return
false
;
});
$
(
'
body
'
).
on
(
'
click
'
,
'
li[data-num]
'
,
function
(
e
){
//
var
_pageNumber
=
$
(
this
).
attr
(
'
data-num
'
);
self
.
getData
(
finalConfig
.
url
,
finalConfig
.
dataType
,
finalConfig
.
pageSize
,
parseInt
(
_pageNumber
),
jqEle
);
});
},
/**
* 渲染HTML
* @param {number} rangeStart - 显示页码值显示的上界
* @param {number} rangeEnd - 显示页码值显示的下界
* @param {number} currentPage - 当前页码值
* @param {number} totalPage - 总页数
* @param {Object} jqEle - 当前的jQuery元素
*/
render
:
function
(
rangeStart
,
rangeEnd
,
currentPage
,
totalPage
,
jqEle
){
var
pnSelector
=
'
.page-navigation
'
;
var
T
=
''
+
'
<nav class="
'
+
pnSelector
.
substring
(
1
)
+
'
" aria-label="Page navigation">
'
+
'
<ul class="pagination">
'
;
//是否显示前页
if
(
currentPage
>
1
){
T
+=
'
<li class="page-item" data-num="
'
+
(
currentPage
-
1
)
+
'
">
'
+
'
<a href="javascript:;" aria-label="Previous" class="previous-btn page-link">
'
+
'
<span aria-hidden="true">«</span>
'
+
'
</a>
'
+
'
</li>
'
;
}
// Main loop
for
(
var
i
=
rangeStart
;
i
<=
rangeEnd
;
i
++
){
if
(
i
==
currentPage
){
T
+=
'
<li class="page-item active"><a href="#" class="page-link">
'
+
i
+
'
<
\
/a><
\
/li>
'
;
}
else
{
T
+=
'
<li class="page-item" data-num="
'
+
i
+
'
"><a href="javascript:;" class="page-link">
'
+
i
+
'
<
\
/a><
\
/li>
'
;
}
}
//是否显示下页
if
(
currentPage
<
totalPage
){
T
+=
'
<li class="page-item" data-num="
'
+
(
currentPage
+
1
)
+
'
">
'
+
'
<a href="#" aria-label="Next" class="next-btn page-link">
'
+
'
<span aria-hidden="true">»</span>
'
+
'
</a>
'
+
'
</li>
'
;
}
T
+=
'
</ul>
'
+
'
</nav>
'
;
jqEle
.
find
(
'
.page-navigation
'
).
remove
();
jqEle
.
append
(
T
);
//
if
(
$
.
isFunction
(
this
.
renderCompleteHandler
)){
this
.
renderCompleteHandler
(
T
,
pnSelector
);
}
},
/**
* 计算显示页码值显示的上下界
* @param {number} currentPage - 当前页码值
* @param {number} pageRange - 页码显示的范围值
* @param {number} totalPage - 总页数
* @returns {Object}
*/
calc
:
function
(
currentPage
,
pageRange
,
totalPage
){
var
rangeStart
=
currentPage
-
pageRange
;
var
rangeEnd
=
currentPage
+
pageRange
;
if
(
rangeEnd
>
totalPage
){
rangeEnd
=
totalPage
;
rangeStart
=
totalPage
-
pageRange
*
2
;
rangeStart
=
rangeStart
<
1
?
1
:
rangeStart
;
}
if
(
rangeStart
<=
1
){
rangeStart
=
1
;
rangeEnd
=
Math
.
min
(
pageRange
*
2
+
1
,
totalPage
);
}
return
{
start
:
rangeStart
,
end
:
rangeEnd
};
},
/**
* 合成配置参数
* @param {Object} option - 配置参数
* @returns {Object}
*/
init
:
function
(
option
){
var
config
=
$
.
extend
({
pageSize
:
20
,
totalRecords
:
0
,
page
:
1
,
range
:
5
,
url
:
''
,
dataType
:
'
json
'
},
option
);
return
config
;
}
};
$
.
fn
.
pagination
=
function
(
option
)
{
option
.
page
=
getCurrentPageNumber
();
var
gtx
=
pagination
.
init
(
option
);
//增加外部回调函数
//拿到数据后的回调
pagination
.
jsonCallbackHandler
=
option
.
jsonCallback
||
null
;
//ajax开始的回调,用以显示loading...
pagination
.
ajaxBeforeHandler
=
option
.
ajaxBefore
||
null
;
//ajax完成后的回调,用以删除loading...
pagination
.
ajaxCompleteHandler
=
option
.
ajaxComplete
||
null
;
//附加回调,在完成HTML分页元素时触发
pagination
.
renderCompleteHandler
=
option
.
randerPageStruct
||
null
;
var
_self
=
this
;
// 没有总记录数
pagination
.
getData
(
gtx
.
url
,
gtx
.
dataType
,
gtx
.
pageSize
,
gtx
.
page
,
_self
);
//绑定事件
pagination
.
bindEvent
(
gtx
,
_self
);
return
this
;
};
//无分页查询字符串返回1,有的返回其值
function
getCurrentPageNumber
(){
//固定的参数:写诗在此(Pagination)
var
pnParam
=
'
p
'
;
//当前浏览器地址栏中的查询参数
var
cuQueryString
=
window
.
location
.
search
;
if
(
cuQueryString
){
var
pn
=
getQueryString
(
pnParam
,
cuQueryString
);
return
(
isBlank
(
pn
))?
1
:
pn
;
}
return
1
;
};
//设置历史
//https://developer.mozilla.org/en-US/docs/Web/API/History/pushState
function
recordHistory
(
pageNumber
,
pageSize
){
//固定的参数:写诗在此(Pagination)
var
pnParam
=
'
p
'
;
//没有分页参数的地址
var
location
=
clearPageQueryNameURL
();
//加入
if
(
location
.
indexOf
(
'
?
'
)
==
-
1
){
location
+=
'
?
'
;
}
else
{
location
+=
'
&
'
;
}
location
+=
pnParam
+
'
=
'
+
pageNumber
;
//是否考虑页标题中加入第n页
var
pageTitle
=
document
.
title
;
var
state
=
{
'
page_number
'
:
pageNumber
,
'
page_size
'
:
pageSize
};
window
.
history
.
pushState
(
state
,
pageTitle
,
location
);
};
//清掉分页参数的地址
function
clearPageQueryNameURL
(){
//固定的参数:写诗在此(Pagination)
//var pnParam = 'p=';
//当前浏览器地址栏中的地址
var
cuLocation
=
window
.
location
.
href
;
var
cuQueryString
=
window
.
location
.
search
;
if
(
cuQueryString
){
cuLocation
=
cuLocation
.
substring
(
0
,
cuLocation
.
indexOf
(
'
?
'
));
cuQueryString
=
cuQueryString
.
replace
(
/
[
?&
]
p=
\d
+/g
,
''
).
substring
(
1
);
if
(
!
isBlank
(
cuQueryString
)){
cuLocation
+=
'
?
'
+
cuQueryString
;
}
}
return
cuLocation
;
};
/**
* Get the value of a querystring
* @param {String} field The field to get the value of
* @param {String} url The URL to get the value from (optional)
* @return {String} The field value
*/
function
getQueryString
(
field
,
url
)
{
var
href
=
url
?
url
:
window
.
location
.
href
;
var
reg
=
new
RegExp
(
'
[?&]
'
+
field
+
'
=([^&#]*)
'
,
'
i
'
);
var
string
=
reg
.
exec
(
href
);
return
string
?
string
[
1
]
:
null
;
};
})(
jQuery
);
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录