Skip to content

Instantly share code, notes, and snippets.

View kevsimpson's full-sized avatar

Kev Simpson kevsimpson

View GitHub Profile
@kevsimpson
kevsimpson / nav.html
Created October 13, 2014 11:34
Responsive nav - wip
<header role="banner">
<div class="wrap wrap--large clearfix">
<div class="clearfix">
<a href="/" class="logo">
<img src="/assets/img/tgdh-logo.svg" alt="" class="logo__site" />
</a>
<button class="button--primary toggle--nav--main" data-toggle="nav--main">Menu</button>
</div>
<nav class="nav nav--main" role="navigation">
@kevsimpson
kevsimpson / data-toggle
Created July 31, 2014 21:06
jQuery: Toggle class via data-toggle
var toggleClass = function(el, className) {
if(el.hasClass(className + '--open')) {
el.removeClass(className + '--open');
} else {
el.addClass(className + '--open');
}
}
$('[data-toggle]').on( "click", function() {
var $className = $( this ).data("toggle");
@kevsimpson
kevsimpson / siteNav.cshtml
Created July 18, 2014 10:14
Umbraco: site nav
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
var homePage = CurrentPage.AncestorsOrSelf(1).First();
var menuItems = homePage.Children.Where("UmbracoNaviHide == false");
}
<nav id="siteNav" class="nav nav--header clearfix">
@foreach (var item in menuItems){
<a href="@item.Url" class="nav__link @item.IsAncestorOrSelf(CurrentPage, "active", "")">@item.Name</a>
}
</nav>
@kevsimpson
kevsimpson / social.cshtml
Created July 18, 2014 10:13
Umbraco: social icon helpers
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
var homePage = CurrentPage.AncestorsOrSelf(1).First();
}
@RenderLinkIfNotEmpty(homePage.twitterUrl, "twitter", "Twitter")
@RenderLinkIfNotEmpty(homePage.facebookUrl, "facebook", "Facebook")
@RenderLinkIfNotEmpty(homePage.youtubeUrl, "youtube", "Youtube")
@RenderLinkIfNotEmpty(homePage.flickrUrl, "flickr", "Flickr")
@kevsimpson
kevsimpson / subNav.cshtml
Created July 18, 2014 10:12
umbraco: subnav
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
var homePage = CurrentPage.AncestorsOrSelf(2).First();
}
@* Render the sitemap by passing the root node to the traverse helper *@
<nav class="nav nav--sub">
@* <a href="@homePage.Url" class="@(CurrentPage.Id == homePage.Id ? "active" : null) nav__link">@homePage.Name</a> *@
@Traverse(homePage)
@kevsimpson
kevsimpson / no_body_scroll.js
Created November 4, 2013 22:03
Prevent body scroll while scrolling sidebar
var body = document.getElementsByTagName('body')[0],
sidebar = document.getElementById('sidebar');
// sidebar overflow hide
sidebar.onmouseover = function() {
body.style.overflow = 'hidden';
}
sidebar.onmouseout = function() {
body.style.overflow = 'auto';
@kevsimpson
kevsimpson / no-body-scroll.js
Created November 4, 2013 21:59
Prevents body from scrolling when scrolling a sidebar
var body = $('body'),
sidebar = $('#sidebar');
// sidebar overflow hide
sidebar.mouseenter(function() {
body.css('overflow', 'hidden');
});
sidebar.mouseleave(function() {
body.css('overflow', 'auto');
});
@kevsimpson
kevsimpson / toggle-class.js
Created September 27, 2013 22:35
Toggle named classes to elements with open/closed appended.
// toggleClass function
function toggleClass(elem, className) {
if(elem.hasClass(className + '-open')) {
elem.removeClass(className + '-open');
elem.addClass(className + '-closed');
} else if(elem.hasClass(className + '-closed')) {
elem.removeClass(className + '-closed');
elem.addClass(className + '-open');
} else {
elem.addClass(className + '-open');