Skip to content

Commit 7716577

Browse files
committed
Only include jQuery when using default search
- Focus on search input after clicking toggle
1 parent e93dcdb commit 7716577

File tree

3 files changed

+19
-12
lines changed

3 files changed

+19
-12
lines changed

_includes/scripts.html

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
{% include google-analytics.html %}
33
{% endif %}
44

5-
<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
65
<script async src="{{ '/assets/javascripts/main.js' | relative_url }}"></script>
76

87
{% if site.search %}

_includes/search/lunr-search-scripts.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
{%- else -%}
3636
{%- assign lang = "en" -%}
3737
{%- endcase -%}
38+
<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
3839
<script src="{{ '/assets/javascripts/lunr/lunr.min.js' | absolute_url }}"></script>
3940
<script src="{{ '/assets/javascripts/search-data.json' | absolute_url }}"></script>
4041
{%- unless lang == "en" -%}

assets/javascripts/main.js

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@
88
* https://github.com/mmistakes/jekyll-basically-theme/blob/master/LICENSE.md
99
*/
1010

11-
// Animate sidebar menu items
1211
var menuItems = document.querySelectorAll('#sidebar li');
1312

1413
// Get vendor transition property
1514
var docElemStyle = document.documentElement.style;
1615
var transitionProp = typeof docElemStyle.transition == 'string' ?
1716
'transition' : 'WebkitTransition';
1817

18+
// Animate sidebar menu items
1919
function animateMenuItems() {
2020
for ( var i=0; i < menuItems.length; i++ ) {
2121
var item = menuItems[i];
@@ -25,6 +25,13 @@ function animateMenuItems() {
2525
}
2626
};
2727

28+
var myWrapper = document.querySelector('.wrapper');
29+
var myMenu = document.querySelector('.sidebar');
30+
var myToggle = document.querySelector('.toggle');
31+
var myInitialContent = document.querySelector('.initial-content');
32+
var mySearchContent = document.querySelector('.search-content');
33+
var mySearchToggle = document.querySelector('.search-toggle');
34+
2835
// Toggle sidebar visibility
2936
function toggleClassMenu() {
3037
myMenu.classList.add('is--animatable');
@@ -39,13 +46,11 @@ function toggleClassMenu() {
3946
}
4047
}
4148

49+
// Animation smoother
4250
function OnTransitionEnd() {
4351
myMenu.classList.remove('is--animatable');
4452
}
4553

46-
var myWrapper = document.querySelector('.wrapper');
47-
var myMenu = document.querySelector('.sidebar');
48-
var myToggle = document.querySelector('.toggle');
4954
myMenu.addEventListener('transitionend', OnTransitionEnd, false);
5055
myToggle.addEventListener('click', function() {
5156
toggleClassMenu();
@@ -55,13 +60,15 @@ myMenu.addEventListener('click', function() {
5560
toggleClassMenu();
5661
animateMenuItems();
5762
}, false);
63+
mySearchToggle.addEventListener('click', function() {
64+
toggleClassSearch();
65+
}, false);
5866

59-
// Search toggle
60-
$(".search-toggle").on("click", function() {
61-
$(".search-content").toggleClass("is--visible");
62-
$(".initial-content").toggleClass("is--hidden");
63-
// set focus on input
67+
// Toggle search input and content visibility
68+
function toggleClassSearch() {
69+
mySearchContent.classList.toggle("is--visible");
70+
myInitialContent.classList.toggle("is--hidden");
6471
setTimeout(function() {
65-
$("#search").focus();
72+
document.querySelector(".search-content input").focus();
6673
}, 400);
67-
});
74+
}

0 commit comments

Comments
 (0)