Skip to content

Instantly share code, notes, and snippets.

View emilisto's full-sized avatar

Emil Stenqvist emilisto

  • Stockholm
View GitHub Profile
@emilisto
emilisto / backbone.onenter.js
Created October 11, 2012 08:43
`onenter` event in Backbone.View
/*
* Implements 'onenter' event for `events` object in Backbone.View.
* Author: Emil Stenqvist <[email protected]>
*/
(function(global) {
var Backbone = global.Backbone;
if(!Backbone) throw "this shim needs Backbone";
var delegateEvents = Backbone.View.prototype.delegateEvents;
@emilisto
emilisto / pickAll.js
Created October 5, 2012 11:13
pickAll: tiny underscore extension by @svammel
/*
* pickAll: tiny underscore extension by @svammel
*
* Example:
*
* var users = [
* { "user": "john", "email": "[email protected]", "url": "www.john.com" },
* { "user": "pete", "email": "[email protected]", "url": "www.pete.com" }
* ];
*
<script src="//diu127fbe6pn6.cloudfront.net/shootitlive.load.v1.js?project=13&client=greenfield" async></script>
var parseQueryString = function(url) {
var a = document.createElement('a');
a.href = url;
str = a.search.replace(/\?/, '');
return deparam(str, true /* coerce values, eg. 'false' into false */);
};
// And in the script tags loop
var info = parseQueryString(el.src);
(function(global) {
// Globals
if(!global.Silp) { global.Silp = {}; };
var Silp = global.Silp;
// To keep track of which embeds we have already processed
if(!Silp.foundEls) Silp.foundEls = [];
var foundEls = Silp.foundEls;
var els = document.getElementsByTagName('script');
<script>
var s = document.createElement('script');
s.src = "//awesome-service.com/init.js";
s.async = true;
// This global is picked up by init.js whenever it loads
window.awesome_options = { project: 13, client: 'greenfield' };
document.body.appendChild(s);
</script>
<script src="//awesome-service.com/init.js"></script>
<script>
awesomeInit({
// Parameters
project: 13, client: 'greenfield'
});
</script>
<script src="//diu127fbe6pn6.cloudfront.net/shootitlive.load.v1.js?project=13&client=greenfield" async></script>
<script>42</script>
<div id="abc319dhaj"></div>
<script>
(function() {
var s = document.createElement('script');
s.src = '//s3-eu-west-1.amazonaws.com/silp.shootitlive.com/master/silp.js';
s.async = true;
window.silp_options = (window.silp_options || []).concat([ { project: 13, client: 'greenfield', element_id: 'abc319dhaj' }];
document.body.appendChild(s);
}());
</script>