Skip to content

Instantly share code, notes, and snippets.

Avatar
🎯
Focusing

Addy Osmani addyosmani

🎯
Focusing
View GitHub Profile
@bmeck
bmeck / partial_application.js
Last active Aug 29, 2015
simple tagged template functions
View partial_application.js
let tee = (a) => {console.log(String(a)); return a}
// our applicator
let $_ = (n) => {
let args = new Array(n);
for (let i = 1; i <= n; i++) {
args[i-1] = `$${i}`
}
return (raw, ...values) =>
Function(...args.concat(tee('return ' + raw.reduce(
@cowboy
cowboy / jquery_plugin_org_1.js
Created Jan 8, 2010
View revisions from oldest -> newest
View jquery_plugin_org_1.js
// Creating a plugin with $.myNS.public_method1() and $.myNS.public_method2() methods, a few different ways.
(function($){
var private_var,
myNS = $.myNS = {},
public_method2;
myNS.public_method1 = function(){
private_method();
View hashchange.js
(function(){
var supported;
if (document.body.setAttribute) {
var el = document.createElement('div');
el.setAttribute('onhashchange','return;');
supported = typeof el.onhashchange == 'function';
} else {
supported = 'onhashchange' in document.documentElement;
}
if (!supported) {
@ebello
ebello / gist:330358
Created Mar 12, 2010 — forked from remy/gist:330318
Placeholder fixer
View gist:330358
/**
* Add this script to the end of your document that use <input autofocus type="text" />
* or <input type="text" placeholder="username" /> and it'll plug support for browser
* without these attributes
* Minified version at the bottom
*/
(function () {
function each(list, fn) {
var l = list.length;
@mattmccray
mattmccray / jquery.anim8.js
Created Apr 25, 2010
platform.js -- Memoize functions base on browser type.
View jquery.anim8.js
// (Simple example of using platform.js in a jQuery plugin.)
// Usage: $('#block').anim8({ top:50, left:350 }, 250);
$.fn.anim8 = (function($){ return platform({
// For Webkit browsers it will use CSS animations
webkit: function(props, speed, transition) {
return this.each(function(){
var elem = $(this),
transition = transition || 'ease-out',
@jlsync
jlsync / Javascript MVC for Ruby-on-Rails.txt
Created Jun 17, 2010
Javascript MVC patterns and implementations
View Javascript MVC for Ruby-on-Rails.txt
http://blog.new-bamboo.co.uk/2010/1/26/why-your-javascript-apps-need-more-structure
http://blog.new-bamboo.co.uk/2010/2/4/let-them-eat-state
http://blog.new-bamboo.co.uk/2010/3/7/the-js-model-layer
http://blog.new-bamboo.co.uk/2010/2/8/rendering-views-in-javascript
Controllers:
http://code.quirkey.com/sammy/ - Sammy is a tiny javascript framework built on top of jQuery. It’s RESTful Evented JavaScript.
@keeto
keeto / Mediator.js
Created Jun 26, 2010
Mediator: Object grouping and brokering
View Mediator.js
/*
Script: Mediator
Object grouping and brokering
Copyright and License:
Copyright 2010, Mark Obcena. MIT-Style License
*/
(function(){
@cowboy
cowboy / newtwitter-hashchange.js
Created Sep 16, 2010
How does IE6/7 "back button" support work?
View newtwitter-hashchange.js
// From http://a5.twimg.com/a/1284588078/javascripts/phoenix.bundle.js
(function (B) {
var A = (function () {
var E = {
select: "input",
change: "input",
submit: "form",
reset: "form",
error: "img",
View hash_history.js
// Handles JavaScript history management and callbacks. To use, register a
// regexp that matches the history hash with its corresponding callback.
window.HashHistory = {
// The interval at which the window location is polled.
URL_CHECK_INTERVAL : 500,
// We need to use an iFrame to save history if we're in an old version of IE.
USE_IFRAME : jQuery.browser.msie && jQuery.browser.version < 8,
View hash_history.js
// Handles JavaScript history management and callbacks. To use, register a
// regexp that matches the history hash with its corresponding callback.
window.HashHistory = {
// The interval at which the window location is polled.
URL_CHECK_INTERVAL : 500,
// We need to use an iFrame to save history if we're in an old version of IE.
USE_IFRAME : jQuery.browser.msie && jQuery.browser.version < 8,
You can’t perform that action at this time.