fix(site-menu): use anchorized title

fixes https://github.com/janraasch/hugo-scroll/pull/6.

This way we put less burden on JavaScript / jQuery, which is always good :-D.
This commit is contained in:
Jan Raasch 2020-09-07 14:23:19 +02:00
parent f9332ad4f4
commit f483bbaea4
2 changed files with 3 additions and 4 deletions

View file

@ -9,7 +9,7 @@
{{ with .Params.header_subheadline }}<h2 class="blog-description">{{ . }}</h2>{{ end }} {{ with .Params.header_subheadline }}<h2 class="blog-description">{{ . }}</h2>{{ end }}
{{ range where $sections ".Params.header_menu" "eq" true }} {{ range where $sections ".Params.header_menu" "eq" true }}
<a class='btn site-menu' data-title='{{ .Title }}'>{{ .Title }}</a> <a class='btn site-menu' data-title-anchor='{{ anchorize .Title }}'>{{ .Title }}</a>
{{ end }} {{ end }}
<i id='header-arrow' class="fa fa-angle-down"></i> <i id='header-arrow' class="fa fa-angle-down"></i>
</div> </div>
@ -22,7 +22,7 @@
</div> </div>
{{ range $index_val, $elem_val := $sections }} {{ range $index_val, $elem_val := $sections }}
<div class='post-holder'> <div class='post-holder'>
<article class='post {{ if eq $index_val 0 }}first{{ else }}{{ if eq (add $index_val 1) (len $sections) }}last{{ end }}{{ end }}'> <article id='{{ anchorize .Title }}' class='post {{ if eq $index_val 0 }}first{{ else }}{{ if eq (add $index_val 1) (len $sections) }}last{{ end }}{{ end }}'>
<header class="post-header"> <header class="post-header">
<h2 class="post-title">{{ .Title }}</h2> <h2 class="post-title">{{ .Title }}</h2>
</header> </header>

View file

@ -41,7 +41,7 @@ var $sitehead = $('#site-head');
}); });
$('a.btn.site-menu').click(function (e) { $('a.btn.site-menu').click(function (e) {
srcToAnchorWithTitle($(e.target).data('title').toLowerCase().split(' ').join('-')); srcToAnchorWithTitle($(e.target).data('title-anchor'));
}); });
$('#header-arrow').click(function () { $('#header-arrow').click(function () {
srcTo($first); srcTo($first);
@ -51,7 +51,6 @@ var $sitehead = $('#site-head');
var t = $(this).text(); var t = $(this).text();
var index = $(this).parents('.post-holder').index(); var index = $(this).parents('.post-holder').index();
$fnav.append("<a class='fn-item' item_index='"+index+"'>"+t+"</a>") $fnav.append("<a class='fn-item' item_index='"+index+"'>"+t+"</a>")
$(this).parents('article').attr('id',t.toLowerCase().split(' ').join('-'));
$('.fn-item').click(function () { $('.fn-item').click(function () {
var i = $(this).attr('item_index'); var i = $(this).attr('item_index');
var s = $(".post[item_index='"+i+"']"); var s = $(".post[item_index='"+i+"']");