Skip to content

Instantly share code, notes, and snippets.

View redgoose-dev's full-sized avatar
๐Ÿชถ
Chaos

redgoose redgoose-dev

๐Ÿชถ
Chaos
View GitHub Profile
@redgoose-dev
redgoose-dev / content-editable.vue
Last active February 18, 2021 09:59
contenteditable with vue2
<template>
<component
:is="tag"
:contenteditable="true"
@input="update"
@blur="update"
@paste="paste"/>
</template>
<script>
@redgoose-dev
redgoose-dev / playground.html
Last active September 10, 2020 13:15
Text Shuffle
<p class="target">text message example</p>
<button type="button" id="play">play</button>
@redgoose-dev
redgoose-dev / convert-svg-to-vue.py
Last active December 18, 2019 11:25
Small projects on python
import os
import sys
import json
'''
Convert icon svg to vue
svg ํŒŒ์ผ์„ vue ํŒŒ์ผ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ์Šคํฌ๋ฆฝํŠธ์ž…๋‹ˆ๋‹ค.
๋ณ€ํ™˜์ž‘์—…์ด ์ข€ ๋งŽ์€ํŽธ์ด๋ผ์„œ ํŒŒ์ด์ฌ์œผ๋กœ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ž‘์„ฑํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
@redgoose-dev
redgoose-dev / ajax.js
Last active December 6, 2019 08:10
๋น„๋™๊ธฐ ํ†ต์‹ ์„ ์œ„ํ•œ `XMLHttpRequest` ๊ฐ์ฒด์˜ ์ธํ„ฐํŽ˜์ด์Šค
/**
* ajax
* ๋น„๋™๊ธฐ ํ†ต์‹ ์„ ์œ„ํ•œ `XMLHttpRequest` ๊ฐ์ฒด์˜ ์ธํ„ฐํŽ˜์ด์Šค
*
* @param {string} url
* @param {string} method
* @param {object} data `xhr.send()` ๋ฉ”์„œ๋“œ์˜ ์ธ์ž๊ฐ’. `formData`๊ฐ™์€๊ฐ’์„ ๋„ฃ์Œ
* @param {function} progress ํ†ต์‹ ์ค‘์— ํ˜ธ์ถœ๋˜๋Š” ํ•จ์ˆ˜
* @param {function} before ํ†ต์‹ ์„ ์‹œ์ž‘ํ•˜๊ธฐ์ „ xhr ๊ฐ์ฒด๋ฅผ ์ถ”๊ฐ€ ์กฐ์ž‘์„ ์œ„ํ•œ ์ค‘๊ฐ„์— ์‹คํ–‰ํ•˜๋Š” ํ•จ์ˆ˜๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
* @return {promise}
@redgoose-dev
redgoose-dev / printf.js
Created January 3, 2018 23:03
String util
/**
* printf
*
* @param {String} str
* @param {String} values
* @return {String}
*/
export function printf(str, ...values)
{
for (let i = 0; i < values.length; i++)
@redgoose-dev
redgoose-dev / findIndexWithKey.js
Last active October 17, 2017 01:49
Object, Array utils
/**
* find index with key in array
* ๋ฐฐ์—ด์†์— ๋“ค์–ด์žˆ๋Š” ๊ฐ์ฒด์˜ ๊ฐ’์„์ฐพ๋Š” ํ•จ์ˆ˜
*
* @param {Array} array
* @param {String} key key name
* @param {String} search search value
* @return {Number}
*/
function findIndexWithKey(array=[], key='', search='')
@redgoose-dev
redgoose-dev / index.html
Created December 27, 2016 06:51
printf function with javascript
<section>
<h1>Command</h1>
<pre class="source">printf('apple:{0}, banana:{1}, mango:{2}', 'red', 'yellow', 'green');</pre>
</section>
<section>
<h1>Result</h1>
<pre class="result"></pre>
</section>
@redgoose-dev
redgoose-dev / resizeImageInCanvas.js
Last active November 10, 2016 20:03
Resize image in canvas
function log(o) {console.log(o);}
function Canvas(width, height, bgColor)
{
this.el = document.createElement('canvas');
this.ctx = this.el.getContext('2d');
var size = {
width : (width) ? width : 150,
height : (height) ? height : 100
@redgoose-dev
redgoose-dev / DisabledTouchscroll.js
Last active December 30, 2015 02:00
Touch for mobile
/**
* Disabled touch scroll for ios
* ios ๋””๋ฐ”์ด์Šค์—์„œ์˜ ์Šคํฌ๋กค์€ ํŠ•๊ธฐ๋Š” ๋ฐฉ์‹ ๋•Œ๋ฌธ์— html,body์—˜๋ฆฌ๋จผํŠธ์—์„œ overflow:hidden์„ ์ ์šฉํ•ด๋ดค์ž ํŠ•๊ธฐ๋Š” ์Šคํฌ๋กค์„ ๋ง‰์„ ํ•„์š”๊ฐ€ ์žˆ์—ˆ๋Š”๋ฐ ์Šคํฌ๋ฆฝํŠธ๋กœ ํ„ฐ์น˜๋ฅผ ๋ง‰์•„๋ฒ„๋ฆฌ๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“ค๊ฒŒ ๋˜์—ˆ๋‹ค.
* ํŠนํžˆ ์‚ฌ์ด๋“œ๋ฐ” ๋„ค๋น„๊ฒŒ์ด์…˜์„ ์‚ฌ์šฉํ• ๋•Œ ์‚ฌ์šฉํ•˜๋ฉด ๋„์›€์ด ๋ ๊ฒƒ์ด๋‹ค.
* body ์—˜๋ฆฌ๋จผํŠธ ์Šคํฌ๋กค์„ ๋ง‰๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. ๋‹ค๋ฅธ ํŠน์ • ์—˜๋ฆฌ๋จผํŠธ๋Š” -webkit-overflow-scrolling: auto;๋กœ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ๋ด„
*/
function DisabledTouchscroll()
{
var self = this;
var $body = $(document.body);
@redgoose-dev
redgoose-dev / CSS3.js
Last active January 18, 2016 23:14
CSS3 Util class
/**
* CSS3 class
*/
var CSS3 = {
eventNames : {
WebkitTransition : 'webkitTransitionEnd',
MozTransition : 'transitionend',
OTransition : 'oTransitionEnd otransitionend',
transition : 'transitionend'