Skip to content

Instantly share code, notes, and snippets.

@astromac
astromac / Disable Placeholder Links
Created January 8, 2014 22:35
Disables placeholder links to prevent page scrolling
@astromac
astromac / Set Content Offset
Last active May 18, 2016 03:59
Positions content below a fixed header and does this everytime the window size changes
function contentOffset() {
var droppx = /\d+/;
var navheight = $('header > .navbar').css('height');
var subnavheight = $('header > .navbar + .sub-nav').css('height');
var breadcrumbheight = $('.breadcrumb').css('height');
var offset = 0;
if ($('.page-header').length > 0) {
var pageheaderheight = $('.page-header').css('height');
offset = parseInt(navheight.match(droppx)) + parseInt(subnavheight.match(droppx)) + parseInt(breadcrumbheight.match(droppx)) + parseInt(pageheaderheight.match(droppx)) + 1;
} else {
@astromac
astromac / Detect Browser
Last active January 2, 2016 15:49
Adds class to the html tag in order to address any styling quirks specific to those brosers. Example class might be "IE IE-9" or "iOS iO7-iPad".
// Detect IE and iOS and add browser class to document
var tag = document.getElementsByTagName('html')[0];
var ua = navigator.userAgent;
var version = '';
if (/msie (\d+)/i.test(ua)) {
version = 'IE IE-' + /msie (\d+)/i.exec(ua)[1];
if (tag.className.length > 0) {
tag.className = tag.className + ' ' + version;
} else {
tag.className = version;
@astromac
astromac / Validate Phone Number
Last active January 2, 2016 15:39
7 and 10 digit US phone number validation
function validatePhoneNumber(phonenumber) {
var pattern = /^(?:(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:\s+|#|x\.?|ext\.?|extension)\s*(\d+))?$/i;
var matches = [];
var validnumber = [];
validnumber.unformatted = '';
if (phonenumber.length > 0) {
if (pattern.test(phonenumber)) {
matches = phonenumber.match(pattern);
// split phone number input into phone number format array