Skip to content

Instantly share code, notes, and snippets.

@KaKi87
KaKi87 / progressBar.js
Last active March 25, 2018 12:54
One element progress bar
/*
One element progress bar
by KaKi87
22.03.18
*/
/*
Get browser prefix (for CSS)
https://stackoverflow.com/questions/8889014/setting-vendor-prefixed-css-using-javascript
https://davidwalsh.name/vendor-prefix
@KaKi87
KaKi87 / custom_variables.js
Last active May 25, 2018 16:31
Get custom JS variables of a web page
/*
First version
*/
function getCustomVariables(){
let page_variables = Object.keys(window); // current page's variables
let default_variables = Object.keys(document.head.appendChild(document.createElement('iframe')).contentWindow); // empty DOM's variables
let custom_variables = page_variables.filter(variable => default_variables.indexOf(variable) == -1); // comparison
return custom_variables;
}
@KaKi87
KaKi87 / json_indent.js
Created December 19, 2018 12:43
Indent JSON in browser
// Simple.
document.body.innerHTML = `<pre>${JSON.stringify(JSON.parse(document.body.textContent), null, 4)}</pre>`;

Keybase proof

I hereby claim:

  • I am kaki87 on github.
  • I am kaki87 (https://keybase.io/kaki87) on keybase.
  • I have a public key ASAfDWR7OZyZANunJVBqheAv2pTHaIKKqFrh5ggHNxVd4go

To claim this, I am signing this object:

@KaKi87
KaKi87 / querystring.js
Created April 5, 2019 09:42
The simplest object to querystring JS function ever
const querystring = object => Object.keys(object).map(key => `${key}=${object[key]}`).join('&');
@KaKi87
KaKi87 / alldebrid.com.userstyle.css
Created April 28, 2019 10:16
AllDebrid.com Material/Flat dark userstyle
@import url('https://use.fontawesome.com/releases/v5.8.1/css/all.css');
@import url('https://fonts.googleapis.com/css?family=Open+Sans');
body {
font-family: 'Open Sans';
}
:root {
--color-white: #ecf0f1;
--color-darkblue: #2c3e50;
@KaKi87
KaKi87 / indexOfAll.js
Created May 8, 2019 16:06
JS : indexOf all matches
const indexOfAll = (string, value) => string.split('').reduce((a, e, i) => (e === value) ? a.concat(i) : a, []);
@KaKi87
KaKi87 / xdaforums_threads_meta_userscript.js
Last active June 26, 2019 01:44
XDA Forums userscript : show threads meta in threads list
// ==UserScript==
// @name XDA Forums - Threads meta
// @namespace https://kaki87.net/
// @version 1.0
// @match https://forum.xda-developers.com/*
// @author KaKi87
// @license MIT
// ==/UserScript==
window.addEventListener('DOMContentLoaded', () => {
@KaKi87
KaKi87 / getParents.js
Last active February 20, 2020 07:43
Get all parents of HTML element
const getParents = element => {
const parents = [];
for (; element && element !== document; element = element.parentElement){
parents.push(element);
}
return parents;
};
/*
Source : https://gomakethings.com/how-to-get-all-parent-elements-with-vanilla-javascript/
@KaKi87
KaKi87 / isIpInCidr.js
Created February 20, 2020 17:36
Is IP in CIDR ?
const isIpInCidr = (ip, cidr) => {
const [range, bits = 32] = cidr.split('/');
const mask = ~(2 ** (32 - bits) - 1);
const ip4ToInt = ip => ip.split('.').reduce((int, oct) => (int << 8) + parseInt(oct, 10), 0) >>> 0;
return (ip4ToInt(ip) & mask) === (ip4ToInt(range) & mask);
};
/*
Source : https://tech.mybuilder.com/determining-if-an-ipv4-address-is-within-a-cidr-range-in-javascript/
*/