Skip to content

Commit 7b0f0da

Browse files
committed
Remove max-height styling for slick carousel, add scroll down button
Removes the max-height styling for the scrolling carousel. Adds the carousel scroll down button, which solves the design issue of images taking up the whole page (which upon first viewing might lead someone to believe that is all the page contains) by providing an indicator+button that scrolls to reveal the rest of the page. Upgrades jquery from slim to full. This is required so we can use animate for the smooth scrolling functionality. Moves all javascript libraries from the footer to header, if this is undesirable for any particular reason (I really didn't see any issues), just say so and I'll pull it from the PR. Resolves #280
1 parent 27ca9ca commit 7b0f0da

File tree

5 files changed

+68
-13
lines changed

5 files changed

+68
-13
lines changed

_includes/footer.html

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,4 @@
4747
</div>
4848
</footer>
4949

50-
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script>
51-
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
52-
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
53-
<script src="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.9.0/slick.min.js"></script>
54-
<script src="/assets/js/slider.js"></script>
55-
<script src="/assets/js/nav.js"></script>
56-
<script src="/assets/js/footer.js"></script>
57-
<script src="/assets/js/sponsors.js"></script>
58-
<script src="/assets/js/tour.js"></script>
50+

_includes/head.html

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,17 @@
2121
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.9.0/slick-theme.min.css"/>
2222
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.2/css/all.css" integrity="sha384-oS3vJWv+0UjzBfQzYUhtDYW+Pj2yciDJxpsK1OYPAYjqT085Qq/1cq5FLXAZQ7Ay" crossorigin="anonymous">
2323
<link rel="stylesheet" href="{{ '/assets/css/main.css' | relative_url }}">
24+
25+
<!-- Javascript libraries -->
26+
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
27+
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
28+
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
29+
<script src="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.9.0/slick.min.js"></script>
30+
<script src="/assets/js/slider.js"></script>
31+
<script src="/assets/js/nav.js"></script>
32+
<script src="/assets/js/footer.js"></script>
33+
<script src="/assets/js/sponsors.js"></script>
34+
<script src="/assets/js/tour.js"></script>
2435

2536
<!-- Getting more done after 2am than most people do all day! -->
2637
</head>

_sass/_slider.scss

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,36 @@
1+
$carousel-scroll-down-button-font-size-larger: 2rem;
2+
$carousel-scroll-down-button-font-size-smaller: 1.25rem;
3+
14
#slider {
25
width: 100%;
36
margin-bottom: 0;
47
height: auto;
5-
max-height: 80vh;
68
overflow-y: hidden;
79
& img {
810
width: 100%;
911
}
1012
background: $gray;
1113
}
14+
15+
#carousel-scroll-down-button:before {
16+
content: '';
17+
font-size: $carousel-scroll-down-button-font-size-larger;
18+
font-weight: bold;
19+
text-shadow:0px 0px 10px black, 0px 0px 10px black;
20+
@media screen and (max-width: 600px){
21+
font-size: $carousel-scroll-down-button-font-size-smaller;
22+
}
23+
}
24+
25+
#carousel-scroll-down-button {
26+
position: absolute;
27+
z-index: 98;
28+
left: 50vw;
29+
right: 0;
30+
width: auto;
31+
height: auto;
32+
}
33+
1234
.slick-prev {
1335
left: 10px;
1436
z-index: 2;

assets/js/slider.js

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,37 @@
11
$(document).ready(() => {
2-
if ($('#slider').length) {
3-
$('#slider').slick({
2+
let slider = $("#slider");
3+
if (slider.length) {
4+
slider.slick({
45
dots: true,
56
autoplay: true,
67
autoplaySpeed: 5000,
78
mobileFirst: true,
89
swipe: true,
910
});
1011
}
12+
// Setup carousel scroll-down button click event
13+
let carouselsdb = $("#carousel-scroll-down-button");
14+
let scrollTopOffset = 1;
15+
carouselsdb.on("click", () => {
16+
$("html, body").animate({ scrollTop: slider.find("img").height() + scrollTopOffset - $("nav").outerHeight() }, "slow");
17+
carouselsdb.blur();
18+
});
19+
20+
// Position carousel scroll-down button
21+
let carouselsdbOffset = {X: -7, Y: -35};
22+
$(window).on("scroll", () => {
23+
let sliderBottom = slider.height() + slider.offset().top;
24+
let windowBottom = $(window).scrollTop() + $(window).height();
25+
if ($(window).scrollTop() > sliderBottom) {
26+
carouselsdb.css("visibility", "hidden");
27+
} else {
28+
if(windowBottom < sliderBottom){
29+
carouselsdb.css("transform", `translate3d(${-carouselsdb.width()/2 + carouselsdbOffset.X}px, ${windowBottom-carouselsdb.height() + carouselsdbOffset.Y}px,0px)`);
30+
} else{
31+
carouselsdb.css("transform", `translate3d(${-carouselsdb.width()/2 + carouselsdbOffset.X}px, ${slider.height()-carouselsdb.height() + carouselsdbOffset.Y}px, 0px)`);
32+
}
33+
carouselsdb.css("visibility", "visible");
34+
}
35+
}).scroll();
36+
$(window).on("load resize focus blur",()=>$(window).scroll());
1137
});

index.html

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@
33
active: home
44
---
55

6+
<div style="top:0;position:absolute;display: inline;">
7+
<!-- Floating scroll-down button -->
8+
<button id="carousel-scroll-down-button" class="slick-next slick-arrow" aria-label="Scroll to the end/bottom of the image carousel"></button>
9+
</div>
10+
611
<div id="slider">
712
<div>
813
<picture>
@@ -47,7 +52,6 @@
4752
</picture>
4853
</div>
4954
</div>
50-
5155
<div class="gray-wrapper">
5256
<div class="container spaced" id="homepage-about">
5357
<div class="row">

0 commit comments

Comments
 (0)