You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by so...@apache.org on 2017/06/02 06:04:11 UTC
[31/46] incubator-weex git commit: + [doc] add article anchor
+ [doc] add article anchor
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/b8d8dca8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/b8d8dca8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/b8d8dca8
Branch: refs/heads/master
Commit: b8d8dca89aa60c006dcc3144822c1b2331eea2d5
Parents: 230ddb7
Author: tancy <ro...@gmail.com>
Authored: Thu May 18 15:35:10 2017 +0800
Committer: tancy <ro...@gmail.com>
Committed: Thu May 18 15:35:10 2017 +0800
----------------------------------------------------------------------
doc/package.json | 1 +
doc/themes/weex/layout/_partial/article.ejs | 2 +-
doc/themes/weex/scripts/helper.js | 18 ++++++++++++++++
doc/themes/weex/source/css/post.scss | 27 +++++++++++++++++++++++-
4 files changed, 46 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b8d8dca8/doc/package.json
----------------------------------------------------------------------
diff --git a/doc/package.json b/doc/package.json
index 31dc325..3f0f3db 100644
--- a/doc/package.json
+++ b/doc/package.json
@@ -9,6 +9,7 @@
"server": "hexo server"
},
"dependencies": {
+ "cheerio": "^0.20.0",
"hexo": "^3.2.2",
"hexo-autoprefixer": "^1.0.0",
"hexo-deployer-git": "git@github.com:Jinjiang/hexo-deployer-git.git",
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b8d8dca8/doc/themes/weex/layout/_partial/article.ejs
----------------------------------------------------------------------
diff --git a/doc/themes/weex/layout/_partial/article.ejs b/doc/themes/weex/layout/_partial/article.ejs
index 09f2fb5..3ee5b2a 100644
--- a/doc/themes/weex/layout/_partial/article.ejs
+++ b/doc/themes/weex/layout/_partial/article.ejs
@@ -3,7 +3,7 @@
<article class="article article-type-<%= page_type %>">
<div class="article-entry" itemprop="articleBody">
<%- partial('post/title', {post: post}) %>
- <%- post.content %>
+ <%- page_anchor(post.content) %>
</div>
<% if (page_type === 'article') { %>
<%- partial('_partial/post/nav') %>
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b8d8dca8/doc/themes/weex/scripts/helper.js
----------------------------------------------------------------------
diff --git a/doc/themes/weex/scripts/helper.js b/doc/themes/weex/scripts/helper.js
index 08c0e66..7efab2a 100644
--- a/doc/themes/weex/scripts/helper.js
+++ b/doc/themes/weex/scripts/helper.js
@@ -1,4 +1,5 @@
'use strict'
+var cheerio = require('cheerio');
hexo.extend.helper.register('url_for_lang', function(path){
var root = this.config.root || ''
@@ -13,6 +14,23 @@ hexo.extend.helper.register('url_for_lang', function(path){
return url
})
+hexo.extend.helper.register('page_anchor', function(str){
+ var $ = cheerio.load(str, {decodeEntities: false});
+ var headings = $('h1, h2, h3, h4, h5, h6');
+
+ if (!headings.length) return str;
+
+ headings.each(function(){
+ var id = $(this).attr('id');
+
+ $(this)
+ .addClass('article-heading')
+ .append('<a class="article-anchor" href="#' + id + '" aria-hidden="true"></a>');
+ });
+
+ return $.html();
+});
+
hexo.extend.helper.register('pick_lang', function(lang){
var root = this.config.root || ''
var langsArr = this.config.language
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b8d8dca8/doc/themes/weex/source/css/post.scss
----------------------------------------------------------------------
diff --git a/doc/themes/weex/source/css/post.scss b/doc/themes/weex/source/css/post.scss
index 0e16e19..f3a6544 100644
--- a/doc/themes/weex/source/css/post.scss
+++ b/doc/themes/weex/source/css/post.scss
@@ -23,6 +23,31 @@
display: none;
}
}
+ .article-heading{
+ margin-top: -85px;
+ border-top: 85px solid transparent
+
+ }
+ .article-anchor {
+ margin-left: 10px;
+ display: none
+ }
+
+ .article-anchor:before {
+ content: "#";
+ color:#00BDFF
+ }
+
+ @media print {
+ .article-anchor {
+ display: none!important
+ }
+ }
+
+ .article-heading:hover .article-anchor {
+ display: inline-block;
+ color:#00BDFF
+ }
.doc-nav {
position: absolute;
@@ -32,7 +57,7 @@
background: $bg-gray;
width: 300px;
z-index: 999;
- padding: 63px 15px 15px;
+ padding: 43px 15px 15px;
overflow-x: hidden;
overflow-y: auto;
}