Skip to content

Instantly share code, notes, and snippets.

@Joopmicroop
Joopmicroop / chrome snippets
Created April 23, 2014 12:55
chrome snippets
/*
Will show in the console which stylesheets are enabled/disabled
*/
console.group('stylesheet enabled/disabled')
for(var i=0;i<document.styleSheets.length; i++){
console.log(document.styleSheets[i].disabled?'disabled':'enabled', document.styleSheets[i].href)
}
console.groupEnd();
@Joopmicroop
Joopmicroop / array add-remove
Last active January 5, 2016 12:58
Array add/remove item reminder
Summary:
--------
add: unshift -> array <- push
remove: shift <- array -> pop
Chart:
------
add remove start end
push X X
pop X X
@Joopmicroop
Joopmicroop / canvas gradient circle - ball
Last active May 25, 2016 10:17
canvas helper functions
var gradientCircle = function(x,y,r,innerColor,outerColor){
this.beginPath();
this.arc(x,y,r,0*Math.PI,2*Math.PI);
var grd = this.createRadialGradient(x, y, 0, x, y, r);
grd.addColorStop(0,innerColor);
grd.addColorStop(1,outerColor);
this.fillStyle = grd;
this.fill();
this.closePath();
}.bind(this.ctx);
@Joopmicroop
Joopmicroop / unified amd, exports, window
Last active August 12, 2016 09:12
write modules compatible for amd require/exports or root/window
(function (root, factory) {
if (typeof define === "function" && define.amd) define(factory); // amd
else if(typeof module == 'object') module.exports = factory(); // node require
else if(typeof exports == 'object') exports = factory(); // browserify
else root.ResizeSensor = factory(); // root/window
})(this, function () {
// code here
// return foo;
})
*{
margin:0;
padding:0;
border:0;
box-sizing: border-box
}
html, body{
height:100%;
width:100%;
@Joopmicroop
Joopmicroop / onCD bash
Last active January 5, 2018 19:58
run script on cd'ing into and out of a directory
# onCD
# -----
# Place the code below in your .bashrc file.
# then place a script in any directory, named 'oncd.sh'
# the script will receive an argument of 'enter' or 'leave'
# when cd'ing into or out of the directory.
#(doesn't work with "shopt -s autocd", use COMMAND_PROMPT for that)
cd () {
oldpath=$PWD
// writen but untested
function HashTable(obj){
this.length = 0;
this.items = { };
for(var p in obj){
if(obj.hasOwnProperty(p)){
this.items[p] = obj[p];
this.length++;
// match everything within style tags
(?<=(<style[^>]*>))([^]+?)(?=(<\/style>))
@Joopmicroop
Joopmicroop / compareSentences
Last active June 1, 2018 16:17
compare sentences / equality fitness function
function calculateStringFitness(str0,str1,opt){
function countMatches(a0, a1){
var matches, pos0, pos1, matchObj;
matches = pos0 = pos1 = 0;
matchObj = {};
a0 = a0.sort();
a1 = a1.sort();
@Joopmicroop
Joopmicroop / saveSelection and restoreSelection
Created August 30, 2018 13:41
to save and restore the cursor position/selection of eg contentEditable elements after update render
var saveSelection, restoreSelection;
if (window.getSelection && document.createRange) {
saveSelection = function(containerEl) {
var range = window.getSelection().getRangeAt(0);
var preSelectionRange = range.cloneRange();
preSelectionRange.selectNodeContents(containerEl);
preSelectionRange.setEnd(range.startContainer, range.startOffset);
var start = preSelectionRange.toString().length;