Skip to content

Commit 7bc3cb2

Browse files
alefi87daattali
authored andcommitted
Avatar now fades with jQuery (daattali#293) (daattali#295)
1 parent 92c9cf8 commit 7bc3cb2

File tree

2 files changed

+21
-27
lines changed

2 files changed

+21
-27
lines changed

css/main.css

-8
Original file line numberDiff line numberDiff line change
@@ -172,11 +172,7 @@ img {
172172
}
173173

174174
.navbar-custom .avatar-container {
175-
opacity: 1;
176175
position: absolute;
177-
-webkit-transition: opacity 0.5s ease-in-out;
178-
-moz-transition: opacity 0.5s ease-in-out;
179-
transition: opacity 0.5s ease-in-out;
180176
left: 50%;
181177
width: 50px;
182178
margin-top: -25px;
@@ -196,10 +192,6 @@ img {
196192
display: block;
197193
}
198194

199-
.navbar-custom.top-nav-short .avatar-container{
200-
opacity: 0;
201-
}
202-
203195
.navbar-custom.top-nav-expanded .avatar-container {
204196
display: none;
205197
}

js/main.js

+21-19
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,21 @@ var main = {
1010
$(window).scroll(function() {
1111
if ($(".navbar").offset().top > 50) {
1212
$(".navbar").addClass("top-nav-short");
13+
$(".navbar-custom .avatar-container").fadeOut(500);
1314
} else {
1415
$(".navbar").removeClass("top-nav-short");
16+
$(".navbar-custom .avatar-container").fadeIn(500);
1517
}
1618
});
17-
19+
1820
// On mobile, hide the avatar when expanding the navbar menu
1921
$('#main-navbar').on('show.bs.collapse', function () {
2022
$(".navbar").addClass("top-nav-expanded");
2123
});
2224
$('#main-navbar').on('hidden.bs.collapse', function () {
2325
$(".navbar").removeClass("top-nav-expanded");
2426
});
25-
27+
2628
// On mobile, when clicking on a multi-level navbar menu, show the child links
2729
$('#main-navbar').on("click", ".navlinks-parent", function(e) {
2830
var target = e.target;
@@ -34,7 +36,7 @@ var main = {
3436
}
3537
});
3638
});
37-
39+
3840
// Ensure nested navbar menus are not longer than the menu header
3941
var menus = $(".navlinks-container");
4042
if (menus.length > 0) {
@@ -60,12 +62,12 @@ var main = {
6062
});
6163

6264
fakeMenu.remove();
63-
}
64-
65-
// show the big header image
65+
}
66+
67+
// show the big header image
6668
main.initImgs();
6769
},
68-
70+
6971
initImgs : function() {
7072
// If the page was large images to randomly select from, choose an image
7173
if ($("#header-big-imgs").length > 0) {
@@ -78,57 +80,57 @@ var main = {
7880
var src = imgInfo.src;
7981
var desc = imgInfo.desc;
8082
main.setImg(src, desc);
81-
83+
8284
// For better UX, prefetch the next image so that it will already be loaded when we want to show it
8385
var getNextImg = function() {
8486
var imgInfo = main.getImgInfo();
8587
var src = imgInfo.src;
86-
var desc = imgInfo.desc;
87-
88+
var desc = imgInfo.desc;
89+
8890
var prefetchImg = new Image();
8991
prefetchImg.src = src;
9092
// if I want to do something once the image is ready: `prefetchImg.onload = function(){}`
91-
93+
9294
setTimeout(function(){
9395
var img = $("<div></div>").addClass("big-img-transition").css("background-image", 'url(' + src + ')');
9496
$(".intro-header.big-img").prepend(img);
9597
setTimeout(function(){ img.css("opacity", "1"); }, 50);
96-
98+
9799
// after the animation of fading in the new image is done, prefetch the next one
98100
//img.one("transitioned webkitTransitionEnd oTransitionEnd MSTransitionEnd", function(){
99101
setTimeout(function() {
100102
main.setImg(src, desc);
101103
img.remove();
102104
getNextImg();
103-
}, 1000);
104-
//});
105+
}, 1000);
106+
//});
105107
}, 6000);
106108
};
107-
109+
108110
// If there are multiple images, cycle through them
109111
if (main.numImgs > 1) {
110112
getNextImg();
111113
}
112114
}
113115
},
114-
116+
115117
getImgInfo : function() {
116118
var randNum = Math.floor((Math.random() * main.numImgs) + 1);
117119
var src = main.bigImgEl.attr("data-img-src-" + randNum);
118120
var desc = main.bigImgEl.attr("data-img-desc-" + randNum);
119-
121+
120122
return {
121123
src : src,
122124
desc : desc
123125
}
124126
},
125-
127+
126128
setImg : function(src, desc) {
127129
$(".intro-header.big-img").css("background-image", 'url(' + src + ')');
128130
if (typeof desc !== typeof undefined && desc !== false) {
129131
$(".img-desc").text(desc).show();
130132
} else {
131-
$(".img-desc").hide();
133+
$(".img-desc").hide();
132134
}
133135
}
134136
};

0 commit comments

Comments
 (0)