Skip to content

Commit

Permalink
Fix navigation under Safari for iOS.
Browse files Browse the repository at this point in the history
  • Loading branch information
mpetroff committed Feb 24, 2015
1 parent d3d5cd2 commit b64a319
Show file tree
Hide file tree
Showing 4 changed files with 54 additions and 19 deletions.
2 changes: 1 addition & 1 deletion _testing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ gems:
permalink: pretty
paginate: 5
paginate_path: about/news/page:num/
url: http://127.0.0.1:4000
url:
20 changes: 11 additions & 9 deletions css/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ body {
background: #87cefa;
display: none;
}
@media (min-width: 767px) {
@media (min-width: 768px) {
.cw-header {
display: block;
}
Expand Down Expand Up @@ -258,7 +258,7 @@ body {
.navbar-brand {
margin-left: -15px;
}
@media (min-width: 767px) {
@media (min-width: 768px) {
.navbar-brand {
display: none;
}
Expand Down Expand Up @@ -340,11 +340,13 @@ html, body {
* Bootstrap fixes
*/

.dropdown:hover {
background: #e7e7e7;
}
.dropdown:hover > .dropdown-menu {
display: block;
@media (min-width: 768px) {
.dropdown:hover {
background: #e7e7e7;
}
.dropdown:hover > .dropdown-menu {
display: block;
}
}
.nav > li > div {
position: relative;
Expand All @@ -363,8 +365,8 @@ html, body {
.navbar-collapse.collapse {
display: none;
}
.navbar-collapse.in {
overflow-y: visible;
.dropdown-open {
background: #e7e7e7;
}


Expand Down
43 changes: 37 additions & 6 deletions js/navbar.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,10 @@ var navbar = document.getElementById('navbar'),
toggle = document.getElementsByClassName('navbar-toggle')[0],
collapse = document.getElementsByClassName('navbar-collapse')[0];

document.addEventListener('scroll', switchScroll, false);
window.addEventListener('resize', switchScroll, false);
toggle.addEventListener('click', toggleMenu, false);

switchScroll();

function switchScroll() {
if (window.scrollY > 185 && document.body.clientWidth > 767) {
if (window.scrollY > 185 && document.body.clientWidth >= 768) {
navbar.classList.remove('navbar-static-top');
navbar.classList.add('navbar-fixed-top');
} else {
Expand All @@ -21,4 +17,39 @@ function switchScroll() {
function toggleMenu() {
collapse.classList.toggle('collapse');
collapse.classList.toggle('in');
}
}

var dropdowns = document.getElementsByClassName('dropdown');

function closeMenus() {
for (var j = 0; j < dropdowns.length; j++) {
dropdowns[j].getElementsByClassName('dropdown-toggle')[0].classList.remove('dropdown-open');
dropdowns[j].classList.remove('open');
}
}

for (var i = 0; i < dropdowns.length; i++) {
dropdowns[i].addEventListener('click', function() {
if (document.body.clientWidth < 768) {
var open = this.classList.contains('open');
closeMenus();
if (!open) {
this.getElementsByClassName('dropdown-toggle')[0].classList.toggle('dropdown-open');
this.classList.toggle('open');
}
}
});
}

function closeMenusOnResize() {
if (document.body.clientWidth >= 768) {
closeMenus();
collapse.classList.add('collapse');
collapse.classList.remove('in');
}
}

document.addEventListener('scroll', switchScroll, false);
window.addEventListener('resize', switchScroll, false);
window.addEventListener('resize', closeMenusOnResize, false);
toggle.addEventListener('click', toggleMenu, false);
8 changes: 5 additions & 3 deletions js/script.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit b64a319

Please sign in to comment.