Skip to content

Instantly share code, notes, and snippets.

@geraldfullam
geraldfullam / RTE RegEx Replacements
Created October 31, 2014 18:24
Common RegEx Replacements for Rich Text Editors
content = content
// Replace hypen, if between number, with en-dash
.replace(/(\d+)-(\d+)/ig, '$1–$2')
// Replace hypen, if between spaces, with em-dash
.replace(/( +)-+( +)/ig, '$1—$2')
// Replace smart double quotes with straight double quotes
.replace(/“|”|„|‟|″|‶/ig, '"')
@geraldfullam
geraldfullam / window.location.query
Created January 6, 2015 21:41
JavaScript: Global access to query string variables as a map
// Source: http://stackoverflow.com/a/13455920/2502532
// -------------------------------------------------------------------
// Add prototype for 'window.location.query([source])' which contain an object
// of querystring keys and their values
// -------------------------------------------------------------------
if(!window.location.query) {
window.location.query = function(source){
var map = {};
source = source || this.search;
@geraldfullam
geraldfullam / JS Get Query Param Value by Name
Created January 7, 2015 04:07
Get query parameter values by key name from window.location.search string
/* Based on: http://stackoverflow.com/a/901144/2502532 */
var getParam = function(key) {
key = key.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
var val = window.location.search.match(new RegExp('[\\?&]' + key + '=([^&#]*)'));
return val === null ? '' : decodeURIComponent(val[1].replace(/\+/g, ' '));
};
console.log(getParam('foo'));
@geraldfullam
geraldfullam / Sort by, then by.markdown
Last active January 30, 2020 19:59
Sort by, then by
@geraldfullam
geraldfullam / Layered-Event-Listeners.markdown
Last active August 29, 2015 14:14
Layered Event Listeners
@geraldfullam
geraldfullam / index.html
Last active August 29, 2015 14:15
jQuery tooltip: accessibility friendly
<div class="button-list namespace">
<h2>$('selector').tooltip()</h2>
<ul>
<li>
<span>Lorem Ipsum Dolar Sit</span>
<button type="button">+
<span class="tooltip" role="tooltip">Hello World again and again and again and again.</span>
</button>
</li>
<li>
@geraldfullam
geraldfullam / Use-of-:not()-in-delegated-event.markdown
Created March 18, 2015 14:40
Use of :not() in delegated event

Use of :not() in delegated event

Proof that using :not() in event delegation is honored, but doesn't prevent bubbling and thus potentially triggering the handler multiple times.

A Pen by Gerald on CodePen.

License.

@geraldfullam
geraldfullam / A-jQuery-plugin:-$().removeClassExcept().markdown
Last active August 29, 2015 14:17
jQuery plugin: $().removeClassExcept()

jQuery plugin: $().removeClassExcept()

Extend jQuery with $().removeClassExcept(); Removes all classes except those specified. Use as an alternative to .removeClass() when you only want to specify (or only know) which classes you want to keep.

A Pen by Gerald on CodePen.

License.

@geraldfullam
geraldfullam / A-jQuery-plugin-deepest().markdown
Last active September 24, 2019 14:21
jQuery plugin: .deepest()

jQuery plugin: .deepest()

Get the deepest descendants matching an optional selector of each element in the set of matched elements.

A Pen by Gerald on CodePen.

License.

Installation