Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
solo
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
solo
Commits
4df4d7e2
Commit
4df4d7e2
authored
Jan 15, 2017
by
Liang Ding
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'refs/remotes/origin/1.8.0-dev'
parents
523b7a62
833e48c8
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
38 additions
and
51 deletions
+38
-51
src/main/java/org/b3log/solo/api/symphony/ArticleReceiver.java
...ain/java/org/b3log/solo/api/symphony/ArticleReceiver.java
+31
-45
src/main/webapp/js/admin/about.js
src/main/webapp/js/admin/about.js
+1
-1
src/main/webapp/js/admin/latkeAdmin.js
src/main/webapp/js/admin/latkeAdmin.js
+1
-1
src/main/webapp/skins/next/css/next.css
src/main/webapp/skins/next/css/next.css
+1
-0
src/main/webapp/skins/next/css/next.min.css
src/main/webapp/skins/next/css/next.min.css
+2
-2
src/main/webapp/skins/next/js/next.js
src/main/webapp/skins/next/js/next.js
+1
-1
src/main/webapp/skins/next/js/next.min.js
src/main/webapp/skins/next/js/next.min.js
+1
-1
No files found.
src/main/java/org/b3log/solo/api/symphony/ArticleReceiver.java
View file @
4df4d7e2
...
@@ -15,9 +15,6 @@
...
@@ -15,9 +15,6 @@
*/
*/
package
org
.
b3log
.
solo
.
api
.
symphony
;
package
org
.
b3log
.
solo
.
api
.
symphony
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
...
@@ -42,11 +39,15 @@ import org.json.JSONObject;
...
@@ -42,11 +39,15 @@ import org.json.JSONObject;
import
org.jsoup.Jsoup
;
import
org.jsoup.Jsoup
;
import
org.jsoup.safety.Whitelist
;
import
org.jsoup.safety.Whitelist
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
/**
/**
* Article receiver (from B3log Symphony).
* Article receiver (from B3log Symphony).
*
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.
2.7, Nov 8, 2016
* @version 1.0.
3.7, Jan 15, 2017
* @since 0.5.5
* @since 0.5.5
*/
*/
@RequestProcessor
@RequestProcessor
...
@@ -56,39 +57,33 @@ public class ArticleReceiver {
...
@@ -56,39 +57,33 @@ public class ArticleReceiver {
* Logger.
* Logger.
*/
*/
private
static
final
Logger
LOGGER
=
Logger
.
getLogger
(
ArticleReceiver
.
class
.
getName
());
private
static
final
Logger
LOGGER
=
Logger
.
getLogger
(
ArticleReceiver
.
class
.
getName
());
/**
* Article abstract length.
*/
private
static
final
int
ARTICLE_ABSTRACT_LENGTH
=
500
;
/**
/**
* Preference query service.
* Preference query service.
*/
*/
@Inject
@Inject
private
PreferenceQueryService
preferenceQueryService
;
private
PreferenceQueryService
preferenceQueryService
;
/**
/**
* Article management service.
* Article management service.
*/
*/
@Inject
@Inject
private
ArticleMgmtService
articleMgmtService
;
private
ArticleMgmtService
articleMgmtService
;
/**
/**
* Article query service.
* Article query service.
*/
*/
@Inject
@Inject
private
ArticleQueryService
articleQueryService
;
private
ArticleQueryService
articleQueryService
;
/**
/**
* User query service.
* User query service.
*/
*/
@Inject
@Inject
private
UserQueryService
userQueryService
;
private
UserQueryService
userQueryService
;
/**
* Article abstract length.
*/
private
static
final
int
ARTICLE_ABSTRACT_LENGTH
=
500
;
/**
/**
* Adds an article with the specified request.
* Adds an article with the specified request.
*
* <p>
* <p>
* Renders the response with a json object, for example,
* Renders the response with a json object, for example,
* <pre>
* <pre>
...
@@ -100,21 +95,17 @@ public class ArticleReceiver {
...
@@ -100,21 +95,17 @@ public class ArticleReceiver {
* </pre>
* </pre>
* </p>
* </p>
*
*
* @param request the specified http servlet request, for example, <pre>
* @param request the specified http servlet request, for example,
* {
* "article": {
* "article": {
* "oId": "",
* "oId": "",
* "articleTitle": "",
* "articleTitle": "",
* "articleContent": "",
* "articleContent": "",
* "articleTags": "tag1,tag2,tag3",
* "articleTags": "tag1,tag2,tag3",
* "userB3Key": "",
* "userB3Key": "",
* "articleEditorType": ""
* "articleEditorType": ""
* }
* }
* }
* </pre>
*
* @param response the specified http servlet response
* @param response the specified http servlet response
* @param context the specified http request context
* @param context
the specified http request context
* @throws Exception exception
* @throws Exception exception
*/
*/
@RequestProcessing
(
value
=
"/apis/symphony/article"
,
method
=
HTTPRequestMethod
.
POST
)
@RequestProcessing
(
value
=
"/apis/symphony/article"
,
method
=
HTTPRequestMethod
.
POST
)
...
@@ -179,7 +170,6 @@ public class ArticleReceiver {
...
@@ -179,7 +170,6 @@ public class ArticleReceiver {
/**
/**
* Updates an article with the specified request.
* Updates an article with the specified request.
*
* <p>
* <p>
* Renders the response with a json object, for example,
* Renders the response with a json object, for example,
* <pre>
* <pre>
...
@@ -190,21 +180,17 @@ public class ArticleReceiver {
...
@@ -190,21 +180,17 @@ public class ArticleReceiver {
* </pre>
* </pre>
* </p>
* </p>
*
*
* @param request the specified http servlet request, for example, <pre>
* @param request the specified http servlet request, for example,
* {
* "article": {
* "article": {
* "oId": "", // Symphony Article#clientArticleId
* "oId": "", // Symphony Article#clientArticleId
* "articleTitle": "",
* "articleTitle": "",
* "articleContent": "",
* "articleContent": "",
* "articleTags": "tag1,tag2,tag3",
* "articleTags": "tag1,tag2,tag3",
* "userB3Key": "",
* "userB3Key": "",
* "articleEditorType": ""
* "articleEditorType": ""
* }
* }
* }
* </pre>
*
* @param response the specified http servlet response
* @param response the specified http servlet response
* @param context the specified http request context
* @param context
the specified http request context
* @throws Exception exception
* @throws Exception exception
*/
*/
@RequestProcessing
(
value
=
"/apis/symphony/article"
,
method
=
HTTPRequestMethod
.
PUT
)
@RequestProcessing
(
value
=
"/apis/symphony/article"
,
method
=
HTTPRequestMethod
.
PUT
)
...
@@ -240,8 +226,8 @@ public class ArticleReceiver {
...
@@ -240,8 +226,8 @@ public class ArticleReceiver {
return
;
return
;
}
}
final
String
plainTextContent
=
Jsoup
.
parse
(
article
.
optString
(
Article
.
ARTICLE_CONTENT
)).
text
(
);
final
String
articleContent
=
article
.
optString
(
Article
.
ARTICLE_CONTENT
);
final
String
plainTextContent
=
Jsoup
.
clean
(
Markdowns
.
toHTML
(
articleContent
),
Whitelist
.
none
());
if
(
plainTextContent
.
length
()
>
ARTICLE_ABSTRACT_LENGTH
)
{
if
(
plainTextContent
.
length
()
>
ARTICLE_ABSTRACT_LENGTH
)
{
article
.
put
(
Article
.
ARTICLE_ABSTRACT
,
plainTextContent
.
substring
(
0
,
ARTICLE_ABSTRACT_LENGTH
)
+
"...."
);
article
.
put
(
Article
.
ARTICLE_ABSTRACT
,
plainTextContent
.
substring
(
0
,
ARTICLE_ABSTRACT_LENGTH
)
+
"...."
);
}
else
{
}
else
{
...
...
src/main/webapp/js/admin/about.js
View file @
4df4d7e2
...
@@ -25,7 +25,7 @@
...
@@ -25,7 +25,7 @@
admin
.
about
=
{
admin
.
about
=
{
init
:
function
()
{
init
:
function
()
{
$
.
ajax
({
$
.
ajax
({
url
:
"
http://
rhythm.b3log.org/version/solo/latest/
"
+
Label
.
version
,
url
:
window
.
location
.
protocol
+
'
://
'
+
"
rhythm.b3log.org/version/solo/latest/
"
+
Label
.
version
,
type
:
"
GET
"
,
type
:
"
GET
"
,
cache
:
false
,
cache
:
false
,
dataType
:
"
jsonp
"
,
dataType
:
"
jsonp
"
,
...
...
src/main/webapp/js/admin/latkeAdmin.js
View file @
4df4d7e2
...
@@ -4105,7 +4105,7 @@ admin.register.main = {
...
@@ -4105,7 +4105,7 @@ admin.register.main = {
admin
.
about
=
{
admin
.
about
=
{
init
:
function
()
{
init
:
function
()
{
$
.
ajax
({
$
.
ajax
({
url
:
"
http://
rhythm.b3log.org/version/solo/latest/
"
+
Label
.
version
,
url
:
window
.
location
.
protocol
+
'
://
'
+
"
rhythm.b3log.org/version/solo/latest/
"
+
Label
.
version
,
type
:
"
GET
"
,
type
:
"
GET
"
,
cache
:
false
,
cache
:
false
,
dataType
:
"
jsonp
"
,
dataType
:
"
jsonp
"
,
...
...
src/main/webapp/skins/next/css/next.css
View file @
4df4d7e2
...
@@ -579,6 +579,7 @@ img {
...
@@ -579,6 +579,7 @@ img {
.sidebar
section
{
.sidebar
section
{
opacity
:
0
;
opacity
:
0
;
position
:
relative
;
position
:
relative
;
overflow
:
auto
;
}
}
.sidebar
>
ul
>
li
{
.sidebar
>
ul
>
li
{
...
...
src/main/webapp/skins/next/css/next.min.css
View file @
4df4d7e2
/**
/**
* Copyright (c) 2010-201
6
, b3log.org & hacpai.com
* Copyright (c) 2010-201
7
, b3log.org & hacpai.com
*
*
* Licensed under the Apache License, Version 2.0 (the "License");
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* you may not use this file except in compliance with the License.
...
@@ -13,4 +13,4 @@
...
@@ -13,4 +13,4 @@
* See the License for the specific language governing permissions and
* See the License for the specific language governing permissions and
* limitations under the License.
* limitations under the License.
*/
*/
@charset
"utf-8"
;
a
,
body
{
color
:
#555
}
.article-body
,
.post-body
,
ul
.comments
li
{
word-wrap
:
break-word
}
html
{
background-color
:
#f5f5f5
}
body
{
margin
:
0
;
font-family
:
Lato
,
"PingFang SC"
,
"Microsoft YaHei"
,
sans-serif
;
font-size
:
14px
;
background
:
#fff
}
a
{
text-decoration
:
none
;
border-bottom
:
1px
solid
#999
}
a
:active
,
a
:hover
{
outline
:
0
}
a
:hover
{
color
:
#222
;
border-bottom-color
:
#222
}
hr
{
margin
:
40px
0
;
height
:
3px
;
border
:
none
;
background-color
:
#ddd
;
background-image
:
repeating-linear-gradient
(
-45deg
,
#fff
,
#fff
4px
,
transparent
4px
,
transparent
8px
)}
blockquote
{
padding
:
0
15px
;
color
:
#666
;
border-left
:
4px
solid
#ddd
}
img
{
max-width
:
100%
;
height
:
auto
}
.fn-clear
:after
,
.fn-clear
:before
{
display
:
table
;
content
:
""
;
line-height
:
0
}
.fn-clear
:after
{
clear
:
both
;
line-height
:
0
}
.fn-left
{
float
:
left
}
.fn-right
{
float
:
right
}
.fn-none
{
display
:
none
}
@font-face
{
font-family
:
icomoon
;
src
:
url(fonts/icomoon.eot?a0psdo)
;
src
:
url(fonts/icomoon.eot?a0psdo#iefix)
format
(
'embedded-opentype'
),
url(fonts/icomoon.ttf?a0psdo)
format
(
'truetype'
),
url(fonts/icomoon.woff?a0psdo)
format
(
'woff'
),
url(fonts/icomoon.svg?a0psdo#icomoon)
format
(
'svg'
);
font-weight
:
400
;
font-style
:
normal
}
[
class
*=
" icon-"
],[
class
^=
icon-
]
{
font-family
:
icomoon
!important
;
speak
:
none
;
font-style
:
normal
;
font-weight
:
400
;
font-variant
:
normal
;
text-transform
:
none
;
line-height
:
1
;
-webkit-font-smoothing
:
antialiased
;
-moz-osx-font-smoothing
:
grayscale
}
.icon-register
:before
{
content
:
"\e973"
}
.icon-setting
:before
{
content
:
"\e994"
}
.icon-login
:before
{
content
:
"\ea13"
}
.icon-logout
:before
{
content
:
"\ea14"
}
.icon-rss
:before
{
content
:
"\e901"
}
.form
{
width
:
100%
;
margin-top
:
50px
}
.form
button
,
.form
input
,
.form
textarea
{
border
:
1px
solid
#CCC
;
background-color
:
#FAFAFA
;
border-radius
:
3px
;
box-shadow
:
0
1px
2px
rgba
(
0
,
0
,
0
,
.075
)
inset
;
padding
:
7px
8px
;
width
:
100%
;
box-sizing
:
border-box
;
outline
:
0
}
.form
button
{
width
:
auto
}
.form
input
:focus
,
.form
textarea
:focus
{
background-color
:
#FFF
;
box-shadow
:
0
1px
2px
rgba
(
0
,
0
,
0
,
.075
)
inset
,
0
0
5px
rgba
(
81
,
167
,
232
,
.5
);
border
:
1px
solid
#51A7E8
}
.error-msg
{
color
:
#9EABB3
;
margin-right
:
10px
}
.em00
,
.em01
,
.em02
,
.em03
,
.em04
,
.em05
,
.em06
,
.em07
,
.em08
,
.em09
,
.em10
,
.em11
,
.em12
,
.em13
,
.em14
{
cursor
:
pointer
;
background-image
:
url(../images/emotions/emotions-ease.png)
;
float
:
left
;
height
:
24px
;
margin-right
:
5px
;
width
:
24px
;
transition
:
all
.2s
ease-out
;
-webkit-transition
:
all
.2s
ease-out
;
-moz-transition
:
all
.2s
ease-out
}
.menu
.menu-item
a
,
.pagination
.next
,
.pagination
.page-number
,
.post-title-link
::before
,
.posts-collapse
.post-header
,
.posts-collapse
.post-header
::before
,
.sidebar-toggle-line
{
transition-duration
:
.2s
;
transition-timing-function
:
ease-in-out
;
transition-delay
:
0s
}
#emotions
span
:hover
{
transform
:
scale
(
1.2
)
rotate
(
360deg
);
-webkit-transform
:
scale
(
1.2
)
rotate
(
360deg
);
-moz-transform
:
scale
(
1.2
)
rotate
(
360deg
)}
.em01
{
background-position
:
-24px
0
}
.em02
{
background-position
:
-48px
0
}
.em03
{
background-position
:
-72px
0
}
.em04
{
background-position
:
-96px
0
}
.em05
{
background-position
:
0
-24px
}
.em06
{
background-position
:
-24px
-24px
}
.em07
{
background-position
:
-48px
-24px
}
.em08
{
background-position
:
-72px
-24px
}
.em09
{
background-position
:
-96px
-24px
}
.em10
{
background-position
:
0
-48px
}
.em11
{
background-position
:
-24px
-48px
}
.em12
{
background-position
:
-48px
-48px
}
.em13
{
background-position
:
-72px
-48px
}
.em14
{
background-position
:
-96px
-48px
}
.wrapper
{
max-width
:
700px
;
min-width
:
600px
;
margin
:
0
auto
;
padding
:
0
10px
}
.main
{
position
:
relative
;
top
:
-50px
;
opacity
:
0
}
.header
{
background
:
#f5f5f5
;
margin-bottom
:
80px
;
padding
:
40px
0
}
.logo-wrap
{
float
:
left
;
overflow
:
hidden
;
top
:
0
;
opacity
:
0
}
.logo-line-after
,
.logo-line-before
{
display
:
block
;
overflow
:
hidden
;
margin
:
0
auto
;
width
:
75%
}
.logo-line-after
i
,
.logo-line-before
i
{
position
:
relative
;
display
:
block
;
height
:
2px
;
background
:
#222
;
left
:
-100%
}
.logo-line-after
i
{
left
:
auto
;
right
:
-100%
}
.logo-wrap
.site-title
{
font-size
:
22px
;
font-weight
:
bolder
;
opacity
:
0
;
top
:
-10px
;
position
:
relative
}
.logo-wrap
>
a
{
position
:
relative
;
display
:
inline-block
;
padding
:
2px
1px
;
color
:
#222
;
line-height
:
2
;
border-bottom
:
none
;
font-family
:
Lato
,
"PingFang SC"
,
"Microsoft YaHei"
,
sans-serif
}
.site-nav-toggle
{
display
:
none
}
.menu
.menu-item
,
.sidebar-toggle-line
{
display
:
inline-block
}
.menu
{
float
:
left
;
margin
:
5px
0
0
20px
;
padding
:
0
20px
;
opacity
:
0
}
.menu
.menu-item
a
{
padding
:
5px
10px
;
border
:
none
;
transition-property
:
background
}
.menu
.menu-item
a
:hover
{
background
:
#e1e1e1
}
.site-search
{
float
:
right
;
margin-top
:
15px
}
.site-search
input
{
padding
:
3px
3px
3px
18px
;
border
:
none
;
border-radius
:
0
;
width
:
140px
;
background
:
url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjwhRE9DVFlQRSBzdmcgIFBVQkxJQyAnLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4nICAnaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkJz48c3ZnIGhlaWdodD0iMTZweCIgaWQ9IkxheWVyXzEiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDE2IDE2OyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNnB4IiB4bWw6c3BhY2U9InByZXNlcnZlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48cGF0aCBkPSJNMTUuNywxNC4zbC0zLjEwNS0zLjEwNUMxMy40NzMsMTAuMDI0LDE0LDguNTc2LDE0LDdjMC0zLjg2Ni0zLjEzNC03LTctN1MwLDMuMTM0LDAsN3MzLjEzNCw3LDcsNyAgYzEuNTc2LDAsMy4wMjQtMC41MjcsNC4xOTQtMS40MDVMMTQuMywxNS43YzAuMTg0LDAuMTg0LDAuMzgsMC4zLDAuNywwLjNjMC41NTMsMCwxLTAuNDQ3LDEtMUMxNiwxNC43ODEsMTUuOTQ2LDE0LjU0NiwxNS43LDE0LjN6ICAgTTIsN2MwLTIuNzYyLDIuMjM4LTUsNS01czUsMi4yMzgsNSw1cy0yLjIzOCw1LTUsNVMyLDkuNzYyLDIsN3oiLz48L3N2Zz4=)
0
50%
no-repeat
;
background-size
:
12px
12px
;
outline
:
0
;
border-bottom
:
1px
solid
#999
;
opacity
:
.5
}
.site-search
input
:focus
{
opacity
:
1
}
.footer
{
margin-top
:
80px
;
padding
:
10px
20px
;
background
:
#f5f5f5
;
color
:
#666
;
line-height
:
2
}
.back-to-top
,
.sidebar-toggle
{
right
:
50px
;
z-index
:
1050
;
padding
:
5px
;
cursor
:
pointer
}
.sidebar-toggle
{
position
:
fixed
;
bottom
:
45px
;
width
:
15px
;
height
:
15px
;
background
:
#222
;
line-height
:
0
;
-webkit-transform
:
translateZ
(
0
)}
.sidebar-toggle.has-toc
.sidebar-toggle-line
{
background
:
#87daff
}
.sidebar-toggle-line
{
position
:
relative
;
vertical-align
:
top
;
height
:
2px
;
width
:
100%
;
background
:
#fff
;
margin-top
:
4px
}
.sidebar-toggle-line
:first-child
{
margin-top
:
0
}
.sidebar-toggle
:hover
.sidebar-toggle-line-first
{
width
:
50%
;
transform
:
rotateZ
(
-45deg
);
top
:
3px
}
.sidebar-toggle
:hover
.sidebar-toggle-line-middle
{
width
:
90%
}
.sidebar-toggle
:hover
.sidebar-toggle-line-last
{
width
:
50%
;
transform
:
rotateZ
(
45deg
);
top
:
-3px
}
.sidebar-toggle.sidebar-active
.sidebar-toggle-line-first
{
width
:
100%
;
transform
:
rotateZ
(
-45deg
);
top
:
6px
}
.sidebar-toggle.sidebar-active
.sidebar-toggle-line-middle
{
opacity
:
0
}
.sidebar-toggle.sidebar-active
.sidebar-toggle-line-last
{
width
:
100%
;
transform
:
rotateZ
(
45deg
);
top
:
-6px
}
.back-to-top
,
.sidebar
{
position
:
fixed
;
background
:
#222
;
-webkit-transform
:
translateZ
(
0
)}
.back-to-top
{
bottom
:
19px
;
width
:
15px
;
height
:
13px
;
color
:
#fff
}
.back-to-top
:before
{
display
:
block
;
content
:
" "
;
margin-top
:
2px
;
width
:
0
;
height
:
0
;
border-width
:
0
7px
8px
;
border-color
:
transparent
transparent
#fff
;
border-style
:
solid
}
.sidebar
{
width
:
320px
;
right
:
-320px
;
top
:
0
;
bottom
:
0
;
z-index
:
1040
;
box-shadow
:
inset
0
2px
6px
#000
;
padding
:
20px
10px
;
color
:
#999
;
text-align
:
center
;
box-sizing
:
border-box
}
.sidebar
a
{
color
:
#999
;
border-bottom-color
:
#555
}
.sidebar
a
:hover
{
color
:
#eee
}
.sidebar
.site-author-image
{
display
:
block
;
margin
:
20px
auto
0
;
max-width
:
96px
;
height
:
auto
;
border
:
2px
solid
#333
;
padding
:
2px
}
.sidebar
.site-author-name
{
margin
:
5px
0
0
;
color
:
#f5f5f5
}
.sidebar
.site-description
{
margin-top
:
5px
;
font-size
:
14px
;
color
:
#555
}
.sidebar
.feed-link
,
.sidebar
.links-of-author
{
margin-top
:
20px
}
.sidebar
.site-state-item
{
display
:
inline-block
;
padding
:
0
15px
;
border-left
:
1px
solid
#333
}
.sidebar
.site-state-item
:first-child
{
border-left
:
none
}
.sidebar
.site-state-item
a
{
border-bottom
:
none
}
.sidebar
.site-state-item-count
{
display
:
block
;
text-align
:
center
;
font-size
:
18px
}
.sidebar
.site-state-item-name
{
font-size
:
13px
}
.sidebar
.feed-link
a
{
display
:
inline-block
;
padding
:
3px
15px
;
color
:
#fc6423
;
border
:
1px
solid
#fc6423
;
border-radius
:
4px
}
.sidebar
.feed-link
a
:hover
{
color
:
#fff
;
background
:
#fc6423
}
.sidebar
.links-of-author
a
{
display
:
inline-block
;
vertical-align
:
middle
;
margin-right
:
10px
;
margin-bottom
:
10px
;
border-bottom-color
:
#555
;
font-size
:
13px
}
.sidebar
.links-of-author
a
:before
{
display
:
inline-block
;
vertical-align
:
middle
;
margin-right
:
3px
;
content
:
" "
;
width
:
4px
;
height
:
4px
;
border-radius
:
50%
;
background
:
#0dd5ff
}
.sidebar
.b3-solo-list
{
margin
:
20px
;
list-style
:
none
;
text-align
:
left
;
padding
:
0
;
font-size
:
14px
;
line-height
:
2
}
.sidebar
section
{
opacity
:
0
;
position
:
relative
}
.sidebar
>
ul
>
li
{
display
:
inline-block
;
cursor
:
pointer
;
border-bottom
:
1px
solid
transparent
;
font-size
:
14px
;
color
:
#555
}
.sidebar
>
ul
>
li
:hover
{
color
:
#f5f5f5
}
.sidebar
>
ul
>
li
.current
{
color
:
#87daff
;
border-bottom-color
:
#87daff
}
.sidebar
>
ul
>
li
:last-child
{
margin-left
:
10px
}
.posts-expand
.post-item
{
margin-top
:
120px
}
.posts-expand
.post-item
:first-child
{
margin-top
:
0
}
.post-title-link
{
display
:
inline-block
;
position
:
relative
;
color
:
#555
;
border-bottom
:
none
;
line-height
:
1.2
;
vertical-align
:
top
;
font-size
:
26px
;
font-weight
:
400
}
.post-title-link
::before
{
content
:
""
;
position
:
absolute
;
width
:
100%
;
height
:
2px
;
bottom
:
0
;
left
:
0
;
background-color
:
#000
;
visibility
:
hidden
;
transform
:
scaleX
(
0
)}
.post-title-link
:hover::before
{
visibility
:
visible
;
transform
:
scaleX
(
1
)}
.posts-expand
.post-meta
{
margin
:
3px
0
60px
;
color
:
#999
;
font-size
:
12px
}
.post-more-link
a
{
color
:
#666
;
border
:
none
;
border-bottom
:
2px
solid
#666
;
transition-property
:
border
}
.post-more-link
a
:hover
{
border-bottom-color
:
#222
}
.pagination
{
border-top
:
1px
solid
#eee
;
margin
:
120px
0
0
;
text-align
:
left
}
.pagination
.next
,
.pagination
.page-number
{
display
:
inline-block
;
position
:
relative
;
top
:
-1px
;
margin
:
0
5px
;
padding
:
0
10px
;
line-height
:
30px
;
border-bottom
:
0
;
border-top
:
1px
solid
#eee
;
transition-property
:
border-color
}
.pagination
.next
:hover
,
.pagination
.page-number
:hover
{
border-top-color
:
#222
}
.pagination
.page-number.current
{
color
:
#fff
;
background
:
#ccc
;
border-top-color
:
#ccc
}
.article-body
{
font-family
:
"Helvetica Neue"
,
"Luxi Sans"
,
"DejaVu Sans"
,
Tahoma
,
"Hiragino Sans GB"
,
"Microsoft Yahei"
,
sans-serif
;
overflow
:
hidden
;
line-height
:
1.5
}
.article-body
ol
,
.article-body
ul
{
padding-left
:
2em
;
margin-top
:
0
;
margin-bottom
:
16px
}
.article-body
li
{
margin-top
:
.25em
}
.article-body
h1
,
.article-body
h2
,
.article-body
h3
,
.article-body
h4
,
.article-body
h5
,
.article-body
h6
{
margin-top
:
24px
;
margin-bottom
:
16px
;
font-weight
:
600
;
line-height
:
1.25
}
.article-body
h1
{
padding-bottom
:
.3em
;
font-size
:
2em
}
.article-body
h2
{
padding-bottom
:
.3em
;
font-size
:
1.5em
}
.article-body
h3
{
font-size
:
1.25em
}
.article-body
h4
{
font-size
:
1em
}
.article-body
h5
{
font-size
:
.875em
}
.article-body
h6
{
font-size
:
.85em
}
.article-body
p
{
margin-top
:
0
;
margin-bottom
:
16px
}
.article-body
blockquote
{
padding
:
0
1em
;
color
:
#777
;
border-left
:
.25em
solid
#ddd
;
margin-bottom
:
16px
}
.article-body
blockquote
p
{
margin
:
0
}
.article-body
iframe
{
border
:
1px
solid
#ccc
}
.article-body
table
{
width
:
100%
;
border
:
1px
solid
#dedede
;
margin
:
15px
auto
;
border-collapse
:
collapse
;
empty-cells
:
show
}
.article-body
thead
{
text-align
:
center
}
.article-body
td
,
.article-body
th
{
height
:
35px
;
border
:
1px
solid
#dedede
;
padding
:
0
10px
}
.article-body
th
{
font-weight
:
700
;
text-align
:
center
!important
;
background
:
rgba
(
158
,
188
,
226
,
.2
)}
.article-body
tbody
tr
:nth-child
(
2n
)
{
background
:
rgba
(
158
,
188
,
226
,
.12
)}
.article-body
tr
:hover
{
background
:
#efefef
}
.article-body
code
{
padding
:
.2em
.4em
;
margin
:
0
;
font-size
:
85%
;
background-color
:
rgba
(
252
,
41
,
41
,
.12
);
border-radius
:
3px
;
color
:
#d23f31
;
font-family
:
mononoki
,
Consolas
,
"Liberation Mono"
,
Menlo
,
Courier
,
monospace
}
.article-body
pre
>
code
{
padding
:
.5em
;
color
:
#333
;
background-color
:
rgba
(
0
,
0
,
0
,
.04
);
background-image
:
url(../images/code-bg.png)
;
background-size
:
20px
20px
;
border-radius
:
5px
}
.article-body
kbd
{
display
:
inline-block
;
padding
:
3px
5px
;
font
:
11px
Consolas
,
"Liberation Mono"
,
Menlo
,
Courier
,
monospace
;
line-height
:
10px
;
color
:
#555
;
vertical-align
:
middle
;
background-color
:
#fcfcfc
;
border
:
1px
solid
#ccc
;
border-bottom-color
:
#bbb
;
border-radius
:
3px
;
box-shadow
:
inset
0
-1px
0
#bbb
}
.post-header
{
text-align
:
center
}
.post-body
img
{
box-sizing
:
border-box
;
margin
:
auto
}
.posts-expand
.post-tags
{
margin-top
:
40px
}
.posts-expand
.post-tags
a
{
padding
:
1px
5px
;
background
:
#f5f5f5
;
border-bottom
:
none
}
.posts-expand
.post-tags
a
:hover
{
background
:
#ccc
}
.posts-expand
.post-nav
{
margin-top
:
40px
;
overflow
:
hidden
;
padding
:
10px
;
white-space
:
nowrap
;
border-top
:
1px
solid
#eee
}
.post-nav-item
a
:hover
{
color
:
#222
;
border-bottom
:
none
}
.post-nav-item
a
{
position
:
relative
;
display
:
inline-block
;
line-height
:
25px
;
font-size
:
14px
;
color
:
#555
;
border-bottom
:
none
;
width
:
50%
}
#externalRelevantArticles
h4
{
margin-bottom
:
0
}
#externalRelevantArticles
ul
{
margin-top
:
5px
}
.article-body
{
text-align
:
justify
}
.article-body
p
{
margin
:
0
0
25px
}
ul
.comments
{
padding
:
0
;
list-style
:
none
;
margin-top
:
50px
;
position
:
relative
}
ul
.comments
li
{
padding
:
10px
;
white-space
:
normal
;
position
:
relative
;
border-bottom
:
#EBF2F6
1px
solid
}
ul
.comments
li
:hover
{
background-color
:
#F7F7F7
}
ul
.comments
.avatar-48
{
position
:
absolute
;
box-shadow
:
0
0
2px
#ddd
;
height
:
48px
;
width
:
48px
;
margin
:
8px
10px
0
0
;
border-radius
:
24px
}
ul
.comments
.comment-body
{
margin
:
8px
0
0
60px
;
min-height
:
50px
}
ul
.comments
li
.comment-body-ref
{
position
:
absolute
;
z-index
:
10
;
background-color
:
#EBF2F6
;
border
:
1px
solid
#d5dbde
;
width
:
80%
;
left
:
69px
}
.posts-collapse
.collection-title
::before
,
.posts-collapse
.post-header
::before
{
left
:
0
;
background
:
#bbb
;
border-radius
:
50%
;
content
:
" "
}
ul
.comments
.comment-meta
{
font-family
:
"Open Sans"
,
"Microsoft Yahei"
,
Helvetica
;
color
:
#9eabb3
;
font-size
:
13px
}
ul
.comments
.comment-meta
a
{
color
:
#9EABB3
;
text-decoration
:
none
;
border-bottom-width
:
0
}
ul
.comments
.post-meta
a
:hover
{
text-decoration
:
underline
}
ul
.comments
.comment-meta
time
{
border-left
:
1px
solid
#d5dbde
;
margin-left
:
8px
;
padding-left
:
12px
}
#captcha
,
#captchaReply
{
height
:
27px
;
vertical-align
:
inherit
}
.tag-cloud
{
text-align
:
center
}
.tag-cloud
ul
.tag-cloud-tags
{
padding-left
:
0
}
#tags
li
{
list-style
:
none
;
display
:
inline-block
;
margin
:
10px
}
#tags
.tags1
{
font-size
:
12px
;
color
:
#CCC
}
#tags
.tags2
{
font-size
:
16px
;
color
:
#999
}
#tags
.tags3
{
font-size
:
21px
;
color
:
#6f6f6f
}
#tags
.tags4
{
font-size
:
24px
;
color
:
#333
}
#tags
.tags5
{
font-size
:
30px
;
color
:
#111
}
.posts-collapse
.collection-title
::before
{
position
:
absolute
;
top
:
50%
;
margin-left
:
-4px
;
margin-top
:
-4px
;
width
:
8px
;
height
:
8px
}
.posts-collapse
.collection-title
{
position
:
relative
;
margin
:
60px
0
}
.posts-collapse
.collection-title
h2
{
margin-left
:
20px
}
.posts-collapse
.collection-title
small
{
color
:
#bbb
}
.posts-collapse
.post-header
::before
{
position
:
absolute
;
top
:
12px
;
width
:
6px
;
height
:
6px
;
margin-left
:
-4px
;
border
:
1px
solid
#fff
;
transition-property
:
background
}
.posts-collapse
.post-header
{
position
:
relative
;
transition-property
:
border
;
border-bottom
:
1px
dashed
#ccc
;
text-align
:
left
}
.posts-collapse
.post-header
:hover
{
border-bottom-color
:
#666
}
.posts-collapse
.post-header
:hover::before
{
background
:
#222
}
.posts-collapse
.post-time
{
position
:
absolute
;
font-size
:
12px
;
left
:
20px
;
top
:
8px
}
.posts-collapse
.post-title
{
margin-left
:
70px
;
font-size
:
16px
;
font-weight
:
400
;
font-family
:
Lato
,
"PingFang SC"
,
"Microsoft YaHei"
,
sans-serif
;
line-height
:
inherit
;
text-decoration
:
none
;
border-bottom
:
0
;
color
:
#666
}
.page-archive
.archive-page-counter
{
position
:
relative
;
top
:
7px
;
left
:
20px
;
margin-bottom
:
50px
;
display
:
block
}
.page-archive
.posts-collapse
.archive-move-on
{
position
:
absolute
;
top
:
11px
;
left
:
0
;
margin-left
:
-6px
;
width
:
10px
;
height
:
10px
;
opacity
:
.5
;
background
:
#555
;
border
:
1px
solid
#fff
;
border-radius
:
50%
}
.page-archive
.post-title
{
margin-left
:
20px
}
.page-archive
.posts-collapse
.post-header
::before
{
top
:
8px
}
.page-archive
.posts-collapse
::after
{
top
:
20px
;
left
:
0
;
margin-left
:
-2px
;
width
:
4px
;
height
:
100%
;
background
:
#f5f5f5
;
z-index
:
-1
;
content
:
" "
;
position
:
absolute
}
@media
(
max-width
:
1000px
){
.sidebar
,
.sidebar-toggle
{
display
:
none
}
body
{
padding-right
:
0
!important
}}
@media
(
max-width
:
700px
){
.page-archive
.posts-collapse
.archive-move-on
{
margin-left
:
5px
}
.posts-collapse
{
margin-left
:
10px
}
pre
{
word-wrap
:
break-word
;
word-break
:
break-all
;
white-space
:
normal
}
.page-archive
.archive-page-counter
{
margin-right
:
10px
}
.site-nav-toggle
{
display
:
block
;
margin-top
:
16px
}
.back-to-top
,
.header-line
,
.logo-line-after
,
.logo-line-before
,
.menu
,
.site-search
{
display
:
none
}
.header
{
margin-bottom
:
50px
;
padding
:
5px
0
}
.header-line
{
position
:
relative
;
top
:
52px
;
height
:
1px
;
width
:
100%
;
background-color
:
#ddd
}
.btn-bar
,
.menu
.menu-item
{
display
:
block
}
.wrapper
{
min-width
:
inherit
}
.btn-bar
{
width
:
22px
;
height
:
2px
;
background
:
#555
;
border-radius
:
1px
}
.btn-bar
+
.btn-bar
{
margin-top
:
4px
}
.menu
{
width
:
100%
;
margin
:
0
0
0
-20px
;
padding
:
0
5px
;
line-height
:
26px
}
.footer
{
text-align
:
center
;
font-size
:
12px
;
padding
:
10px
0
}
.footer
.fn-right
{
float
:
none
}}
@charset
"utf-8"
;
a
,
body
{
color
:
#555
}
.article-body
,
.post-body
,
ul
.comments
li
{
word-wrap
:
break-word
}
html
{
background-color
:
#f5f5f5
}
body
{
margin
:
0
;
font-family
:
Lato
,
"PingFang SC"
,
"Microsoft YaHei"
,
sans-serif
;
font-size
:
14px
;
background
:
#fff
}
a
{
text-decoration
:
none
;
border-bottom
:
1px
solid
#999
}
a
:active
,
a
:hover
{
outline
:
0
}
a
:hover
{
color
:
#222
;
border-bottom-color
:
#222
}
hr
{
margin
:
40px
0
;
height
:
3px
;
border
:
none
;
background-color
:
#ddd
;
background-image
:
repeating-linear-gradient
(
-45deg
,
#fff
,
#fff
4px
,
transparent
4px
,
transparent
8px
)}
blockquote
{
padding
:
0
15px
;
color
:
#666
;
border-left
:
4px
solid
#ddd
}
img
{
max-width
:
100%
;
height
:
auto
}
.fn-clear
:after
,
.fn-clear
:before
{
display
:
table
;
content
:
""
;
line-height
:
0
}
.fn-clear
:after
{
clear
:
both
;
line-height
:
0
}
.fn-left
{
float
:
left
}
.fn-right
{
float
:
right
}
.fn-none
{
display
:
none
}
@font-face
{
font-family
:
icomoon
;
src
:
url(fonts/icomoon.eot?a0psdo)
;
src
:
url(fonts/icomoon.eot?a0psdo#iefix)
format
(
'embedded-opentype'
),
url(fonts/icomoon.ttf?a0psdo)
format
(
'truetype'
),
url(fonts/icomoon.woff?a0psdo)
format
(
'woff'
),
url(fonts/icomoon.svg?a0psdo#icomoon)
format
(
'svg'
);
font-weight
:
400
;
font-style
:
normal
}
[
class
*=
" icon-"
],[
class
^=
icon-
]
{
font-family
:
icomoon
!important
;
speak
:
none
;
font-style
:
normal
;
font-weight
:
400
;
font-variant
:
normal
;
text-transform
:
none
;
line-height
:
1
;
-webkit-font-smoothing
:
antialiased
;
-moz-osx-font-smoothing
:
grayscale
}
.icon-register
:before
{
content
:
"\e973"
}
.icon-setting
:before
{
content
:
"\e994"
}
.icon-login
:before
{
content
:
"\ea13"
}
.icon-logout
:before
{
content
:
"\ea14"
}
.icon-rss
:before
{
content
:
"\e901"
}
.form
{
width
:
100%
;
margin-top
:
50px
}
.form
button
,
.form
input
,
.form
textarea
{
border
:
1px
solid
#CCC
;
background-color
:
#FAFAFA
;
border-radius
:
3px
;
box-shadow
:
0
1px
2px
rgba
(
0
,
0
,
0
,
.075
)
inset
;
padding
:
7px
8px
;
width
:
100%
;
box-sizing
:
border-box
;
outline
:
0
}
.form
button
{
width
:
auto
}
.form
input
:focus
,
.form
textarea
:focus
{
background-color
:
#FFF
;
box-shadow
:
0
1px
2px
rgba
(
0
,
0
,
0
,
.075
)
inset
,
0
0
5px
rgba
(
81
,
167
,
232
,
.5
);
border
:
1px
solid
#51A7E8
}
.error-msg
{
color
:
#9EABB3
;
margin-right
:
10px
}
.em00
,
.em01
,
.em02
,
.em03
,
.em04
,
.em05
,
.em06
,
.em07
,
.em08
,
.em09
,
.em10
,
.em11
,
.em12
,
.em13
,
.em14
{
cursor
:
pointer
;
background-image
:
url(../images/emotions/emotions-ease.png)
;
float
:
left
;
height
:
24px
;
margin-right
:
5px
;
width
:
24px
;
transition
:
all
.2s
ease-out
;
-webkit-transition
:
all
.2s
ease-out
;
-moz-transition
:
all
.2s
ease-out
}
.menu
.menu-item
a
,
.pagination
.next
,
.pagination
.page-number
,
.post-title-link
::before
,
.posts-collapse
.post-header
,
.posts-collapse
.post-header
::before
,
.sidebar-toggle-line
{
transition-duration
:
.2s
;
transition-timing-function
:
ease-in-out
;
transition-delay
:
0s
}
#emotions
span
:hover
{
transform
:
scale
(
1.2
)
rotate
(
360deg
);
-webkit-transform
:
scale
(
1.2
)
rotate
(
360deg
);
-moz-transform
:
scale
(
1.2
)
rotate
(
360deg
)}
.em01
{
background-position
:
-24px
0
}
.em02
{
background-position
:
-48px
0
}
.em03
{
background-position
:
-72px
0
}
.em04
{
background-position
:
-96px
0
}
.em05
{
background-position
:
0
-24px
}
.em06
{
background-position
:
-24px
-24px
}
.em07
{
background-position
:
-48px
-24px
}
.em08
{
background-position
:
-72px
-24px
}
.em09
{
background-position
:
-96px
-24px
}
.em10
{
background-position
:
0
-48px
}
.em11
{
background-position
:
-24px
-48px
}
.em12
{
background-position
:
-48px
-48px
}
.em13
{
background-position
:
-72px
-48px
}
.em14
{
background-position
:
-96px
-48px
}
.wrapper
{
max-width
:
700px
;
min-width
:
600px
;
margin
:
0
auto
;
padding
:
0
10px
}
.main
{
position
:
relative
;
top
:
-50px
;
opacity
:
0
}
.header
{
background
:
#f5f5f5
;
margin-bottom
:
80px
;
padding
:
40px
0
}
.logo-wrap
{
float
:
left
;
overflow
:
hidden
;
top
:
0
;
opacity
:
0
}
.logo-line-after
,
.logo-line-before
{
display
:
block
;
overflow
:
hidden
;
margin
:
0
auto
;
width
:
75%
}
.logo-line-after
i
,
.logo-line-before
i
{
position
:
relative
;
display
:
block
;
height
:
2px
;
background
:
#222
;
left
:
-100%
}
.logo-line-after
i
{
left
:
auto
;
right
:
-100%
}
.logo-wrap
.site-title
{
font-size
:
22px
;
font-weight
:
bolder
;
opacity
:
0
;
top
:
-10px
;
position
:
relative
}
.logo-wrap
>
a
{
position
:
relative
;
display
:
inline-block
;
padding
:
2px
1px
;
color
:
#222
;
line-height
:
2
;
border-bottom
:
none
;
font-family
:
Lato
,
"PingFang SC"
,
"Microsoft YaHei"
,
sans-serif
}
.site-nav-toggle
{
display
:
none
}
.menu
.menu-item
,
.sidebar-toggle-line
{
display
:
inline-block
}
.menu
{
float
:
left
;
margin
:
5px
0
0
20px
;
padding
:
0
20px
;
opacity
:
0
}
.menu
.menu-item
a
{
padding
:
5px
10px
;
border
:
none
;
transition-property
:
background
}
.menu
.menu-item
a
:hover
{
background
:
#e1e1e1
}
.site-search
{
float
:
right
;
margin-top
:
15px
}
.site-search
input
{
padding
:
3px
3px
3px
18px
;
border
:
none
;
border-radius
:
0
;
width
:
140px
;
background
:
url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjwhRE9DVFlQRSBzdmcgIFBVQkxJQyAnLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4nICAnaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkJz48c3ZnIGhlaWdodD0iMTZweCIgaWQ9IkxheWVyXzEiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDE2IDE2OyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNnB4IiB4bWw6c3BhY2U9InByZXNlcnZlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48cGF0aCBkPSJNMTUuNywxNC4zbC0zLjEwNS0zLjEwNUMxMy40NzMsMTAuMDI0LDE0LDguNTc2LDE0LDdjMC0zLjg2Ni0zLjEzNC03LTctN1MwLDMuMTM0LDAsN3MzLjEzNCw3LDcsNyAgYzEuNTc2LDAsMy4wMjQtMC41MjcsNC4xOTQtMS40MDVMMTQuMywxNS43YzAuMTg0LDAuMTg0LDAuMzgsMC4zLDAuNywwLjNjMC41NTMsMCwxLTAuNDQ3LDEtMUMxNiwxNC43ODEsMTUuOTQ2LDE0LjU0NiwxNS43LDE0LjN6ICAgTTIsN2MwLTIuNzYyLDIuMjM4LTUsNS01czUsMi4yMzgsNSw1cy0yLjIzOCw1LTUsNVMyLDkuNzYyLDIsN3oiLz48L3N2Zz4=)
0
50%
no-repeat
;
background-size
:
12px
12px
;
outline
:
0
;
border-bottom
:
1px
solid
#999
;
opacity
:
.5
}
.site-search
input
:focus
{
opacity
:
1
}
.footer
{
margin-top
:
80px
;
padding
:
10px
20px
;
background
:
#f5f5f5
;
color
:
#666
;
line-height
:
2
}
.back-to-top
,
.sidebar-toggle
{
right
:
50px
;
z-index
:
1050
;
padding
:
5px
;
cursor
:
pointer
}
.sidebar-toggle
{
position
:
fixed
;
bottom
:
45px
;
width
:
15px
;
height
:
15px
;
background
:
#222
;
line-height
:
0
;
-webkit-transform
:
translateZ
(
0
)}
.sidebar-toggle.has-toc
.sidebar-toggle-line
{
background
:
#87daff
}
.sidebar-toggle-line
{
position
:
relative
;
vertical-align
:
top
;
height
:
2px
;
width
:
100%
;
background
:
#fff
;
margin-top
:
4px
}
.sidebar-toggle-line
:first-child
{
margin-top
:
0
}
.sidebar-toggle
:hover
.sidebar-toggle-line-first
{
width
:
50%
;
transform
:
rotateZ
(
-45deg
);
top
:
3px
}
.sidebar-toggle
:hover
.sidebar-toggle-line-middle
{
width
:
90%
}
.sidebar-toggle
:hover
.sidebar-toggle-line-last
{
width
:
50%
;
transform
:
rotateZ
(
45deg
);
top
:
-3px
}
.sidebar-toggle.sidebar-active
.sidebar-toggle-line-first
{
width
:
100%
;
transform
:
rotateZ
(
-45deg
);
top
:
6px
}
.sidebar-toggle.sidebar-active
.sidebar-toggle-line-middle
{
opacity
:
0
}
.sidebar-toggle.sidebar-active
.sidebar-toggle-line-last
{
width
:
100%
;
transform
:
rotateZ
(
45deg
);
top
:
-6px
}
.back-to-top
,
.sidebar
{
position
:
fixed
;
background
:
#222
;
-webkit-transform
:
translateZ
(
0
)}
.back-to-top
{
bottom
:
19px
;
width
:
15px
;
height
:
13px
;
color
:
#fff
}
.back-to-top
:before
{
display
:
block
;
content
:
" "
;
margin-top
:
2px
;
width
:
0
;
height
:
0
;
border-width
:
0
7px
8px
;
border-color
:
transparent
transparent
#fff
;
border-style
:
solid
}
.sidebar
{
width
:
320px
;
right
:
-320px
;
top
:
0
;
bottom
:
0
;
z-index
:
1040
;
box-shadow
:
inset
0
2px
6px
#000
;
padding
:
20px
10px
;
color
:
#999
;
text-align
:
center
;
box-sizing
:
border-box
}
.sidebar
a
{
color
:
#999
;
border-bottom-color
:
#555
}
.sidebar
a
:hover
{
color
:
#eee
}
.sidebar
.site-author-image
{
display
:
block
;
margin
:
20px
auto
0
;
max-width
:
96px
;
height
:
auto
;
border
:
2px
solid
#333
;
padding
:
2px
}
.sidebar
.site-author-name
{
margin
:
5px
0
0
;
color
:
#f5f5f5
}
.sidebar
.site-description
{
margin-top
:
5px
;
font-size
:
14px
;
color
:
#555
}
.sidebar
.feed-link
,
.sidebar
.links-of-author
{
margin-top
:
20px
}
.sidebar
.site-state-item
{
display
:
inline-block
;
padding
:
0
15px
;
border-left
:
1px
solid
#333
}
.sidebar
.site-state-item
:first-child
{
border-left
:
none
}
.sidebar
.site-state-item
a
{
border-bottom
:
none
}
.sidebar
.site-state-item-count
{
display
:
block
;
text-align
:
center
;
font-size
:
18px
}
.sidebar
.site-state-item-name
{
font-size
:
13px
}
.sidebar
.feed-link
a
{
display
:
inline-block
;
padding
:
3px
15px
;
color
:
#fc6423
;
border
:
1px
solid
#fc6423
;
border-radius
:
4px
}
.sidebar
.feed-link
a
:hover
{
color
:
#fff
;
background
:
#fc6423
}
.sidebar
.links-of-author
a
{
display
:
inline-block
;
vertical-align
:
middle
;
margin-right
:
10px
;
margin-bottom
:
10px
;
border-bottom-color
:
#555
;
font-size
:
13px
}
.sidebar
.links-of-author
a
:before
{
display
:
inline-block
;
vertical-align
:
middle
;
margin-right
:
3px
;
content
:
" "
;
width
:
4px
;
height
:
4px
;
border-radius
:
50%
;
background
:
#0dd5ff
}
.sidebar
.b3-solo-list
{
margin
:
20px
;
list-style
:
none
;
text-align
:
left
;
padding
:
0
;
font-size
:
14px
;
line-height
:
2
}
.sidebar
section
{
opacity
:
0
;
position
:
relative
;
overflow
:
auto
}
.sidebar
>
ul
>
li
{
display
:
inline-block
;
cursor
:
pointer
;
border-bottom
:
1px
solid
transparent
;
font-size
:
14px
;
color
:
#555
}
.sidebar
>
ul
>
li
:hover
{
color
:
#f5f5f5
}
.sidebar
>
ul
>
li
.current
{
color
:
#87daff
;
border-bottom-color
:
#87daff
}
.sidebar
>
ul
>
li
:last-child
{
margin-left
:
10px
}
.posts-expand
.post-item
{
margin-top
:
120px
}
.posts-expand
.post-item
:first-child
{
margin-top
:
0
}
.post-title-link
{
display
:
inline-block
;
position
:
relative
;
color
:
#555
;
border-bottom
:
none
;
line-height
:
1.2
;
vertical-align
:
top
;
font-size
:
26px
;
font-weight
:
400
}
.post-title-link
::before
{
content
:
""
;
position
:
absolute
;
width
:
100%
;
height
:
2px
;
bottom
:
0
;
left
:
0
;
background-color
:
#000
;
visibility
:
hidden
;
transform
:
scaleX
(
0
)}
.post-title-link
:hover::before
{
visibility
:
visible
;
transform
:
scaleX
(
1
)}
.posts-expand
.post-meta
{
margin
:
3px
0
60px
;
color
:
#999
;
font-size
:
12px
}
.post-more-link
a
{
color
:
#666
;
border
:
none
;
border-bottom
:
2px
solid
#666
;
transition-property
:
border
}
.post-more-link
a
:hover
{
border-bottom-color
:
#222
}
.pagination
{
border-top
:
1px
solid
#eee
;
margin
:
120px
0
0
;
text-align
:
left
}
.pagination
.next
,
.pagination
.page-number
{
display
:
inline-block
;
position
:
relative
;
top
:
-1px
;
margin
:
0
5px
;
padding
:
0
10px
;
line-height
:
30px
;
border-bottom
:
0
;
border-top
:
1px
solid
#eee
;
transition-property
:
border-color
}
.pagination
.next
:hover
,
.pagination
.page-number
:hover
{
border-top-color
:
#222
}
.pagination
.page-number.current
{
color
:
#fff
;
background
:
#ccc
;
border-top-color
:
#ccc
}
.article-body
{
font-family
:
"Helvetica Neue"
,
"Luxi Sans"
,
"DejaVu Sans"
,
Tahoma
,
"Hiragino Sans GB"
,
"Microsoft Yahei"
,
sans-serif
;
overflow
:
hidden
;
line-height
:
1.5
}
.article-body
ol
,
.article-body
ul
{
padding-left
:
2em
;
margin-top
:
0
;
margin-bottom
:
16px
}
.article-body
li
{
margin-top
:
.25em
}
.article-body
h1
,
.article-body
h2
,
.article-body
h3
,
.article-body
h4
,
.article-body
h5
,
.article-body
h6
{
margin-top
:
24px
;
margin-bottom
:
16px
;
font-weight
:
600
;
line-height
:
1.25
}
.article-body
h1
{
padding-bottom
:
.3em
;
font-size
:
2em
}
.article-body
h2
{
padding-bottom
:
.3em
;
font-size
:
1.5em
}
.article-body
h3
{
font-size
:
1.25em
}
.article-body
h4
{
font-size
:
1em
}
.article-body
h5
{
font-size
:
.875em
}
.article-body
h6
{
font-size
:
.85em
}
.article-body
p
{
margin-top
:
0
;
margin-bottom
:
16px
}
.article-body
blockquote
{
padding
:
0
1em
;
color
:
#777
;
border-left
:
.25em
solid
#ddd
;
margin-bottom
:
16px
}
.article-body
blockquote
p
{
margin
:
0
}
.article-body
iframe
{
border
:
1px
solid
#ccc
}
.article-body
table
{
width
:
100%
;
border
:
1px
solid
#dedede
;
margin
:
15px
auto
;
border-collapse
:
collapse
;
empty-cells
:
show
}
.article-body
thead
{
text-align
:
center
}
.article-body
td
,
.article-body
th
{
height
:
35px
;
border
:
1px
solid
#dedede
;
padding
:
0
10px
}
.article-body
th
{
font-weight
:
700
;
text-align
:
center
!important
;
background
:
rgba
(
158
,
188
,
226
,
.2
)}
.article-body
tbody
tr
:nth-child
(
2n
)
{
background
:
rgba
(
158
,
188
,
226
,
.12
)}
.article-body
tr
:hover
{
background
:
#efefef
}
.article-body
code
{
padding
:
.2em
.4em
;
margin
:
0
;
font-size
:
85%
;
background-color
:
rgba
(
252
,
41
,
41
,
.12
);
border-radius
:
3px
;
color
:
#d23f31
;
font-family
:
mononoki
,
Consolas
,
"Liberation Mono"
,
Menlo
,
Courier
,
monospace
}
.article-body
pre
>
code
{
padding
:
.5em
;
color
:
#333
;
background-color
:
rgba
(
0
,
0
,
0
,
.04
);
background-image
:
url(../images/code-bg.png)
;
background-size
:
20px
20px
;
border-radius
:
5px
}
.article-body
kbd
{
display
:
inline-block
;
padding
:
3px
5px
;
font
:
11px
Consolas
,
"Liberation Mono"
,
Menlo
,
Courier
,
monospace
;
line-height
:
10px
;
color
:
#555
;
vertical-align
:
middle
;
background-color
:
#fcfcfc
;
border
:
1px
solid
#ccc
;
border-bottom-color
:
#bbb
;
border-radius
:
3px
;
box-shadow
:
inset
0
-1px
0
#bbb
}
.post-header
{
text-align
:
center
}
.post-body
img
{
box-sizing
:
border-box
;
margin
:
auto
}
.posts-expand
.post-tags
{
margin-top
:
40px
}
.posts-expand
.post-tags
a
{
padding
:
1px
5px
;
background
:
#f5f5f5
;
border-bottom
:
none
}
.posts-expand
.post-tags
a
:hover
{
background
:
#ccc
}
.posts-expand
.post-nav
{
margin-top
:
40px
;
overflow
:
hidden
;
padding
:
10px
;
white-space
:
nowrap
;
border-top
:
1px
solid
#eee
}
.post-nav-item
a
:hover
{
color
:
#222
;
border-bottom
:
none
}
.post-nav-item
a
{
position
:
relative
;
display
:
inline-block
;
line-height
:
25px
;
font-size
:
14px
;
color
:
#555
;
border-bottom
:
none
;
width
:
50%
}
#externalRelevantArticles
h4
{
margin-bottom
:
0
}
#externalRelevantArticles
ul
{
margin-top
:
5px
}
.article-body
{
text-align
:
justify
}
.article-body
p
{
margin
:
0
0
25px
}
ul
.comments
{
padding
:
0
;
list-style
:
none
;
margin-top
:
50px
;
position
:
relative
}
ul
.comments
li
{
padding
:
10px
;
white-space
:
normal
;
position
:
relative
;
border-bottom
:
#EBF2F6
1px
solid
}
ul
.comments
li
:hover
{
background-color
:
#F7F7F7
}
ul
.comments
.avatar-48
{
position
:
absolute
;
box-shadow
:
0
0
2px
#ddd
;
height
:
48px
;
width
:
48px
;
margin
:
8px
10px
0
0
;
border-radius
:
24px
}
ul
.comments
.comment-body
{
margin
:
8px
0
0
60px
;
min-height
:
50px
}
ul
.comments
li
.comment-body-ref
{
position
:
absolute
;
z-index
:
10
;
background-color
:
#EBF2F6
;
border
:
1px
solid
#d5dbde
;
width
:
80%
;
left
:
69px
}
.posts-collapse
.collection-title
::before
,
.posts-collapse
.post-header
::before
{
left
:
0
;
background
:
#bbb
;
border-radius
:
50%
;
content
:
" "
}
ul
.comments
.comment-meta
{
font-family
:
"Open Sans"
,
"Microsoft Yahei"
,
Helvetica
;
color
:
#9eabb3
;
font-size
:
13px
}
ul
.comments
.comment-meta
a
{
color
:
#9EABB3
;
text-decoration
:
none
;
border-bottom-width
:
0
}
ul
.comments
.post-meta
a
:hover
{
text-decoration
:
underline
}
ul
.comments
.comment-meta
time
{
border-left
:
1px
solid
#d5dbde
;
margin-left
:
8px
;
padding-left
:
12px
}
#captcha
,
#captchaReply
{
height
:
27px
;
vertical-align
:
inherit
}
.tag-cloud
{
text-align
:
center
}
.tag-cloud
ul
.tag-cloud-tags
{
padding-left
:
0
}
#tags
li
{
list-style
:
none
;
display
:
inline-block
;
margin
:
10px
}
#tags
.tags1
{
font-size
:
12px
;
color
:
#CCC
}
#tags
.tags2
{
font-size
:
16px
;
color
:
#999
}
#tags
.tags3
{
font-size
:
21px
;
color
:
#6f6f6f
}
#tags
.tags4
{
font-size
:
24px
;
color
:
#333
}
#tags
.tags5
{
font-size
:
30px
;
color
:
#111
}
.posts-collapse
.collection-title
::before
{
position
:
absolute
;
top
:
50%
;
margin-left
:
-4px
;
margin-top
:
-4px
;
width
:
8px
;
height
:
8px
}
.posts-collapse
.collection-title
{
position
:
relative
;
margin
:
60px
0
}
.posts-collapse
.collection-title
h2
{
margin-left
:
20px
}
.posts-collapse
.collection-title
small
{
color
:
#bbb
}
.posts-collapse
.post-header
::before
{
position
:
absolute
;
top
:
12px
;
width
:
6px
;
height
:
6px
;
margin-left
:
-4px
;
border
:
1px
solid
#fff
;
transition-property
:
background
}
.posts-collapse
.post-header
{
position
:
relative
;
transition-property
:
border
;
border-bottom
:
1px
dashed
#ccc
;
text-align
:
left
}
.posts-collapse
.post-header
:hover
{
border-bottom-color
:
#666
}
.posts-collapse
.post-header
:hover::before
{
background
:
#222
}
.posts-collapse
.post-time
{
position
:
absolute
;
font-size
:
12px
;
left
:
20px
;
top
:
8px
}
.posts-collapse
.post-title
{
margin-left
:
70px
;
font-size
:
16px
;
font-weight
:
400
;
font-family
:
Lato
,
"PingFang SC"
,
"Microsoft YaHei"
,
sans-serif
;
line-height
:
inherit
;
text-decoration
:
none
;
border-bottom
:
0
;
color
:
#666
}
.page-archive
.archive-page-counter
{
position
:
relative
;
top
:
7px
;
left
:
20px
;
margin-bottom
:
50px
;
display
:
block
}
.page-archive
.posts-collapse
.archive-move-on
{
position
:
absolute
;
top
:
11px
;
left
:
0
;
margin-left
:
-6px
;
width
:
10px
;
height
:
10px
;
opacity
:
.5
;
background
:
#555
;
border
:
1px
solid
#fff
;
border-radius
:
50%
}
.page-archive
.post-title
{
margin-left
:
20px
}
.page-archive
.posts-collapse
.post-header
::before
{
top
:
8px
}
.page-archive
.posts-collapse
::after
{
top
:
20px
;
left
:
0
;
margin-left
:
-2px
;
width
:
4px
;
height
:
100%
;
background
:
#f5f5f5
;
z-index
:
-1
;
content
:
" "
;
position
:
absolute
}
@media
(
max-width
:
1000px
){
.sidebar
,
.sidebar-toggle
{
display
:
none
}
body
{
padding-right
:
0
!important
}}
@media
(
max-width
:
700px
){
.page-archive
.posts-collapse
.archive-move-on
{
margin-left
:
5px
}
.posts-collapse
{
margin-left
:
10px
}
pre
{
word-wrap
:
break-word
;
word-break
:
break-all
;
white-space
:
normal
}
.page-archive
.archive-page-counter
{
margin-right
:
10px
}
.site-nav-toggle
{
display
:
block
;
margin-top
:
16px
}
.back-to-top
,
.header-line
,
.logo-line-after
,
.logo-line-before
,
.menu
,
.site-search
{
display
:
none
}
.header
{
margin-bottom
:
50px
;
padding
:
5px
0
}
.header-line
{
position
:
relative
;
top
:
52px
;
height
:
1px
;
width
:
100%
;
background-color
:
#ddd
}
.btn-bar
,
.menu
.menu-item
{
display
:
block
}
.wrapper
{
min-width
:
inherit
}
.btn-bar
{
width
:
22px
;
height
:
2px
;
background
:
#555
;
border-radius
:
1px
}
.btn-bar
+
.btn-bar
{
margin-top
:
4px
}
.menu
{
width
:
100%
;
margin
:
0
0
0
-20px
;
padding
:
0
5px
;
line-height
:
26px
}
.footer
{
text-align
:
center
;
font-size
:
12px
;
padding
:
10px
0
}
.footer
.fn-right
{
float
:
none
}}
\ No newline at end of file
\ No newline at end of file
src/main/webapp/skins/next/js/next.js
View file @
4df4d7e2
...
@@ -99,7 +99,7 @@ var NexT = {
...
@@ -99,7 +99,7 @@ var NexT = {
$
(
'
.sidebar
'
).
prepend
(
articleTocHTML
);
$
(
'
.sidebar
'
).
prepend
(
articleTocHTML
);
var
$sectionF
=
$
(
'
.sidebar section:first
'
).
html
(
$
(
'
.b3-solo-list
'
)),
var
$sectionF
=
$
(
'
.sidebar section:first
'
).
html
(
$
(
'
.b3-solo-list
'
)),
$sectionL
=
$
(
'
.sidebar section:last
'
);
$sectionL
=
$
(
'
.sidebar section:last
'
);
$sectionF
.
height
(
$
(
window
).
height
()
-
90
);
// 切换 tab
// 切换 tab
$
(
'
.sidebar > ul > li
'
).
click
(
function
()
{
$
(
'
.sidebar > ul > li
'
).
click
(
function
()
{
if
(
$
(
this
).
data
(
'
tab
'
)
===
'
toc
'
)
{
if
(
$
(
this
).
data
(
'
tab
'
)
===
'
toc
'
)
{
...
...
src/main/webapp/skins/next/js/next.min.js
View file @
4df4d7e2
...
@@ -13,4 +13,4 @@
...
@@ -13,4 +13,4 @@
* See the License for the specific language governing permissions and
* See the License for the specific language governing permissions and
* limitations under the License.
* limitations under the License.
*/
*/
var
NexT
=
{
init
:
function
(){
$
(
"
.sidebar-toggle
"
).
click
(
function
(){
var
i
=
$
(
"
.sidebar
"
);
$
(
this
).
hasClass
(
"
sidebar-active
"
)?(
$
(
this
).
removeClass
(
"
sidebar-active
"
),
$
(
"
body
"
).
animate
({
"
padding-right
"
:
0
}),
i
.
animate
({
right
:
-
320
}),
i
.
find
(
"
section
"
).
css
(
"
opacity
"
,
0
)):(
$
(
this
).
addClass
(
"
sidebar-active
"
),
$
(
"
body
"
).
animate
({
"
padding-right
"
:
320
}),
i
.
animate
({
right
:
0
},
function
(){
i
.
find
(
"
section:first
"
).
animate
({
opacity
:
1
})}))}),
$
(
"
.site-nav-toggle
"
).
click
(
function
(){
$
(
"
.site-nav
"
).
slideToggle
()}),
$
(
document
).
ready
(
function
(){
setTimeout
(
function
(){
$
(
"
.logo-wrap
"
).
css
(
"
opacity
"
,
1
),
$
(
"
.logo-line-before i
"
).
animate
({
left
:
"
0
"
},
function
(){
$
(
"
.site-title
"
).
css
(
"
opacity
"
,
1
).
animate
({
top
:
0
},
function
(){
$
(
"
.menu
"
).
css
(
"
opacity
"
,
1
).
animate
({
"
margin-top
"
:
"
15px
"
}),
$
(
"
.main
"
).
css
(
"
opacity
"
,
1
).
animate
({
top
:
"
0
"
},
function
(){
$
(
"
.b3-solo-list li
"
).
length
>
0
&&
$
(
window
).
width
()
>
1
e3
&&
$
(
"
.sidebar-toggle
"
).
click
()})})}),
$
(
"
.logo-line-after i
"
).
animate
({
right
:
"
0
"
})},
500
)})},
initArticle
:
function
(){
if
(
$
(
"
.b3-solo-list li
"
).
length
>
0
&&
$
(
window
).
width
()
>
1
e3
){
$
(
"
.sidebar-toggle
"
).
addClass
(
"
has-toc
"
);
var
i
=
'
<ul><li class="current" data-tab="toc">
'
+
Label
.
tocLabel
+
'
</li><li data-tab="site">
'
+
Label
.
siteViewLabel
+
"
</li></ul><section></section>
"
;
$
(
"
.sidebar
"
).
prepend
(
i
);
var
t
=
$
(
"
.sidebar section:first
"
).
html
(
$
(
"
.b3-solo-list
"
)),
a
=
$
(
"
.sidebar section:last
"
);
$
(
"
.sidebar > ul > li
"
).
click
(
function
(){
"
toc
"
===
$
(
this
).
data
(
"
tab
"
)?
a
.
animate
({
opacity
:
"
0
"
,
top
:
"
-50px
"
},
300
,
function
(){
t
.
show
().
css
(
"
top
"
,
"
-50px
"
),
t
.
animate
({
opacity
:
"
1
"
,
top
:
"
0
"
},
300
)}):
t
.
animate
({
opacity
:
"
0
"
,
top
:
"
-50px
"
},
300
,
function
(){
t
.
hide
().
css
(
"
top
"
,
"
-50px
"
),
a
.
animate
({
opacity
:
"
1
"
,
top
:
"
0
"
},
300
)}),
$
(
"
.sidebar > ul > li
"
).
removeClass
(
"
current
"
),
$
(
this
).
addClass
(
"
current
"
)})}}};
NexT
.
init
();
var
NexT
=
{
init
:
function
(){
$
(
"
.sidebar-toggle
"
).
click
(
function
(){
var
i
=
$
(
"
.sidebar
"
);
$
(
this
).
hasClass
(
"
sidebar-active
"
)?(
$
(
this
).
removeClass
(
"
sidebar-active
"
),
$
(
"
body
"
).
animate
({
"
padding-right
"
:
0
}),
i
.
animate
({
right
:
-
320
}),
i
.
find
(
"
section
"
).
css
(
"
opacity
"
,
0
)):(
$
(
this
).
addClass
(
"
sidebar-active
"
),
$
(
"
body
"
).
animate
({
"
padding-right
"
:
320
}),
i
.
animate
({
right
:
0
},
function
(){
i
.
find
(
"
section:first
"
).
animate
({
opacity
:
1
})}))}),
$
(
"
.site-nav-toggle
"
).
click
(
function
(){
$
(
"
.site-nav
"
).
slideToggle
()}),
$
(
document
).
ready
(
function
(){
setTimeout
(
function
(){
$
(
"
.logo-wrap
"
).
css
(
"
opacity
"
,
1
),
$
(
"
.logo-line-before i
"
).
animate
({
left
:
"
0
"
},
function
(){
$
(
"
.site-title
"
).
css
(
"
opacity
"
,
1
).
animate
({
top
:
0
},
function
(){
$
(
"
.menu
"
).
css
(
"
opacity
"
,
1
).
animate
({
"
margin-top
"
:
"
15px
"
}),
$
(
"
.main
"
).
css
(
"
opacity
"
,
1
).
animate
({
top
:
"
0
"
},
function
(){
$
(
"
.b3-solo-list li
"
).
length
>
0
&&
$
(
window
).
width
()
>
1
e3
&&
$
(
"
.sidebar-toggle
"
).
click
()})})}),
$
(
"
.logo-line-after i
"
).
animate
({
right
:
"
0
"
})},
500
)})},
initArticle
:
function
(){
if
(
$
(
"
.b3-solo-list li
"
).
length
>
0
&&
$
(
window
).
width
()
>
1
e3
){
$
(
"
.sidebar-toggle
"
).
addClass
(
"
has-toc
"
);
var
i
=
'
<ul><li class="current" data-tab="toc">
'
+
Label
.
tocLabel
+
'
</li><li data-tab="site">
'
+
Label
.
siteViewLabel
+
"
</li></ul><section></section>
"
;
$
(
"
.sidebar
"
).
prepend
(
i
);
var
t
=
$
(
"
.sidebar section:first
"
).
html
(
$
(
"
.b3-solo-list
"
)),
a
=
$
(
"
.sidebar section:last
"
);
t
.
height
(
$
(
window
).
height
()
-
90
),
$
(
"
.sidebar > ul > li
"
).
click
(
function
(){
"
toc
"
===
$
(
this
).
data
(
"
tab
"
)?
a
.
animate
({
opacity
:
"
0
"
,
top
:
"
-50px
"
},
300
,
function
(){
t
.
show
().
css
(
"
top
"
,
"
-50px
"
),
t
.
animate
({
opacity
:
"
1
"
,
top
:
"
0
"
},
300
)}):
t
.
animate
({
opacity
:
"
0
"
,
top
:
"
-50px
"
},
300
,
function
(){
t
.
hide
().
css
(
"
top
"
,
"
-50px
"
),
a
.
animate
({
opacity
:
"
1
"
,
top
:
"
0
"
},
300
)}),
$
(
"
.sidebar > ul > li
"
).
removeClass
(
"
current
"
),
$
(
this
).
addClass
(
"
current
"
)})}}};
NexT
.
init
();
\ No newline at end of file
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment