Skip to content

Instantly share code, notes, and snippets.

View dmethvin's full-sized avatar

Dave Methvin dmethvin

View GitHub Profile
@dmethvin
dmethvin / gist:43ffd1c743554e5c50ae
Last active August 29, 2015 14:02
$.xhr brainstorming
// Node-like signature with single callback, returns the XHR
$.xhrcb( url: String, complete: Function( err: Error, xhr: XHR, options: Object ) ): XHR;
$.xhrcb( options: Object, complete: Function( err: Error, xhr: XHR, options: Object ) ): XHR;
// Returns a Promise, throws an error if no Promise or shim
$.xhr( options: Object ): Promise
// See ticket http://bugs.jquery.com/ticket/14509 for `options`
// Thoughts:
function SomeWidget( $elem ) {
this.$elem = $elem;
}
SomeWidget.prototype = {
constructor: SomeWidget,
renderTo: function( target ) {
$( target ).append( this.$elem.on( "click mousemove", this ) );
},
@dmethvin
dmethvin / gist:766de2d37c163e5ec6d5
Created February 18, 2015 15:56
Reply from John Resig
From: John Resig [mailto:jeresig@gmail.com]
Sent: Sunday, February 26, 2006 7:55 PM
To: Dave Methvin
Subject: Re: jQuery suggestions
> JQuery is incredibly useful. I just started playing with it yesterday
> and already I'm hooked. I know exactly *why* I like it so much too.
> Have you ever read Paul Graham's essay "Succinctness is Power"?
> http://www.paulgraham.com/power.html
> Read it, and your neck will be sore afterwards. That's what happens
@dmethvin
dmethvin / gist:808592
Created February 2, 2011 22:28
holdReady
// jQuery.holdReady (true) --> don't fire ready until i say so
// jQuery.holdReady (false) --> ok go ahead (assuming nobody else delayed)
jQuery.holdReady = function( hold ) {
if ( hold ) {
jQuery.readyWait++;
} else {
jQuery.ready( true );
}
};
@dmethvin
dmethvin / jquery-cmd
Created February 4, 2011 19:20
cmd file for jquery make
set path=c:\nodejs\bin;%path%
c:\cygwin\bin\bash -c "cd c:/vstudio/jquery; make"
icacls dist\jquery.js /grant Everyone:RX
@dmethvin
dmethvin / gist:1099753
Created July 22, 2011 16:13
Better Simpsons
function createSimpsons() {
var theSimpsons = ['Bart', 'Homer', 'Marge', 'Maggy', 'Lisa'],
numberOfSeasons = 21,
avgEpisodesPerSeason = 22;
$("#title").append("The Simpson Family");
$("#details").append(
"<p>Number of seasons: " + numberOfSeasons + "</p>",
"<p>Episodes per season: " + avgEpisodesPerSeason + "</p>",
var originalEvent = event,
propHook = jQuery.event.propHooks[ event.type ];
event = jQuery.Event( originalEvent );
// If hook returns false, it doesn't want anything else done
if ( propHook && propHook( event, originalEvent ) === false ) {
return event;
}
@dmethvin
dmethvin / gist:1236358
Created September 22, 2011 23:39
yet another propHooks take
var originalEvent = event,
propHook = jQuery.event.propHooks[ event.type ],
copy = props;
event = jQuery.Event( originalEvent );
// propHook can return an array of props to copy
if ( propHook ) {
copy.concat( propHook( event, originalEvent) || [] );
}
@dmethvin
dmethvin / gist:1242388
Created September 26, 2011 14:43
Windows 8 api sample geting lat/lon
(new Windows.Devices.Geolocation.Geolocator()).getGeopositionAsync().then(function(pos){
// If lat/lon not available, just use a default
pos = pos || { coordinate: { latitude: 39, longitude: 76, accuracy: 42 } };
$("#latlon").text(
"lat=" + pos.coordinate.latitude + ", lon=" + pos.coordinate.longitude +
", accuracy=" + pos.coordinate.accuracy+
", addr=" + (pos.civicAddress.city || pos.civicAddress.state || pos.civicAddress.postalCode)
);
@dmethvin
dmethvin / deferreds_pipe
Created October 13, 2011 17:50
Use of deferreds and pipe
fetchCurrentPosition()
.then(updateLocationDisplay)
.pipe(fetchWeatherAtThisLocation)
.then(updateWeatherDisplay)
.pipe(determineWeatherType)
.then(updateRecommendations)
.then(updateAppTile);
function fetchCurrentPosition()
{