summaryrefslogtreecommitdiff
path: root/javascripts/script.js
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2012-11-13 02:50:51 -0800
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2012-11-13 02:50:51 -0800
commitfb42eb1afdd02ee0a121dc648f6980503c33fa4e (patch)
treef17618a0255629c775543b5e784e477fd369ff7a /javascripts/script.js
downloadgitlab-ci-gh-pages.tar.gz
Create gh-pages branch via GitHubgh-pages
Diffstat (limited to 'javascripts/script.js')
-rw-r--r--javascripts/script.js52
1 files changed, 52 insertions, 0 deletions
diff --git a/javascripts/script.js b/javascripts/script.js
new file mode 100644
index 0000000..2f08550
--- /dev/null
+++ b/javascripts/script.js
@@ -0,0 +1,52 @@
+(function($) {
+$(document).ready(function(){
+
+ // putting lines by the pre blocks
+ $("pre").each(function(){
+ var pre = $(this).text().split("\n");
+ var lines = new Array(pre.length+1);
+ for(var i = 0; i < pre.length; i++) {
+ var wrap = Math.floor(pre[i].split("").length / 70)
+ if (pre[i]==""&&i==pre.length-1) {
+ lines.splice(i, 1);
+ } else {
+ lines[i] = i+1;
+ for(var j = 0; j < wrap; j++) {
+ lines[i] += "\n";
+ }
+ }
+ }
+ $(this).before("<pre class='lines'>" + lines.join("\n") + "</pre>");
+ });
+
+ var headings = [];
+
+ var collectHeaders = function(){
+ headings.push({"top":$(this).offset().top - 15,"text":$(this).text()});
+ }
+
+ if($(".markdown-body h1").length > 1) $(".markdown-body h1").each(collectHeaders)
+ else if($(".markdown-body h2").length > 1) $(".markdown-body h2").each(collectHeaders)
+ else if($(".markdown-body h3").length > 1) $(".markdown-body h3").each(collectHeaders)
+
+ $(window).scroll(function(){
+ if(headings.length==0) return true;
+ var scrolltop = $(window).scrollTop() || 0;
+ if(headings[0] && scrolltop < headings[0].top) {
+ $(".current-section").css({"opacity":0,"visibility":"hidden"});
+ return false;
+ }
+ $(".current-section").css({"opacity":1,"visibility":"visible"});
+ for(var i in headings) {
+ if(scrolltop >= headings[i].top) {
+ $(".current-section .name").text(headings[i].text);
+ }
+ }
+ });
+
+ $(".current-section a").click(function(){
+ $(window).scrollTop(0);
+ return false;
+ })
+});
+})(jQuery) \ No newline at end of file