Skip to content

Instantly share code, notes, and snippets.

@remy
remy / trim-canvas.js
Last active June 21, 2024 09:07
Trims the surrounding transparent pixels from a canvas
// MIT http://rem.mit-license.org
function trim(c) {
var ctx = c.getContext('2d'),
copy = document.createElement('canvas').getContext('2d'),
pixels = ctx.getImageData(0, 0, c.width, c.height),
l = pixels.data.length,
i,
bound = {
top: null,
@joelambert
joelambert / README
Created June 1, 2011 11:03
Drop in replacements for setTimeout()/setInterval() that makes use of requestAnimationFrame() where possible for better performance
Drop in replace functions for setTimeout() & setInterval() that
make use of requestAnimationFrame() for performance where available
http://www.joelambert.co.uk
Copyright 2011, Joe Lambert.
Free to use under the MIT license.
http://www.opensource.org/licenses/mit-license.php
@borismus
borismus / gist:1032746
Created June 18, 2011 02:46
Convert a base64 string into a binary Uint8 Array
var BASE64_MARKER = ';base64,';
function convertDataURIToBinary(dataURI) {
var base64Index = dataURI.indexOf(BASE64_MARKER) + BASE64_MARKER.length;
var base64 = dataURI.substring(base64Index);
var raw = window.atob(base64);
var rawLength = raw.length;
var array = new Uint8Array(new ArrayBuffer(rawLength));
for(i = 0; i < rawLength; i++) {
@TomMalbran
TomMalbran / dabblet.css
Created April 26, 2012 09:48
Falling Leaves with CSS Only
/*
Falling Leaves with CSS Only
http://premiumcoding.com/css3-tricks-falling-leaves-css/
*/
.container{
top:0px;
background:#fff;
width:100%;
height:100%;
@demonixis
demonixis / MathHelper.js
Created December 4, 2012 10:38
JavaScript Math helper
var MathHelper = {
// Get a value between two values
clamp: function (value, min, max) {
if (value < min) {
return min;
}
else if (value > max) {
return max;
}
@electricg
electricg / LICENSE-MIT
Last active March 27, 2024 20:59
Stopwatch in javascript
Copyright (c) 2010-2015 Giulia Alfonsi <electric.g@gmail.com>
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:
@podo
podo / gist:5361182
Created April 11, 2013 06:27
Get Pseudo-Element Properties with JavaScript
var color = window.getComputedStyle(
document.querySelector('.element'), ':before'
).getPropertyValue('color')
@gustavohenke
gustavohenke / svg2png.js
Created February 18, 2014 15:27
SVG to PNG
var svg = document.querySelector( "svg" );
var svgData = new XMLSerializer().serializeToString( svg );
var canvas = document.createElement( "canvas" );
var ctx = canvas.getContext( "2d" );
var img = document.createElement( "img" );
img.setAttribute( "src", "data:image/svg+xml;base64," + btoa( svgData ) );
img.onload = function() {
@brettz9
brettz9 / jqflower-test.html
Created July 14, 2014 22:04
Non-functioning scribbles for XQuery-like approach in JS
<!DOCTYPE html>
<meta charset="utf-8" />
<label class="myItems">Hello</label>
<label class="myItems">World!</label>
<script src="jqflower.js"></script>
<script>
try {
@AndreasMadsen
AndreasMadsen / README.md
Last active July 23, 2021 14:35
Escape-from-xp

From twitter I was told of escape-from-xp ( https://twitter.com/sylwia_erhardt/status/489554167120527360 ). Obiusly I had to hack this an discovered that the code ( https://escapefromxp.azurewebsites.net/game.min.js ) besides not being very compressed, also contained easter eggs for any JavaScript enthusiast. This is how you enable them all:

  1. Go to: https://escapefromxp.azurewebsites.net/#arcade . https://www.modern.ie/en-us/virtualization-tools#escape-from-xp just contain an iframe to this location and #arcade makes sure no redict back to www.modern.ie occurre. #arcade also enables a few other things, you will notice the text have changed a little. Also you now change weapon on F.

  2. Open the JavaScript console in your browser and type:

event = { source: { postMessage: function () {}} };
["hardcoreMode", "originalHacker", "tanksTanksTanks", "IDDQD"].forEach(
  window.ig.game.installServicePack.bind(window.ig.game)
)