Skip to content

Instantly share code, notes, and snippets.

View maousan's full-sized avatar
💭
I may be slow to respond.

maou maousan

💭
I may be slow to respond.
View GitHub Profile
@maousan
maousan / MonacoEditor.ts
Created March 4, 2026 16:32 — forked from hannoeru/MonacoEditor.ts
Vue MonacoEditor Component
import { defineComponent, h, nextTick, onMounted, ref, watch, onUnmounted } from 'vue'
import * as monaco from 'monaco-editor'
// Emmet Plugin
import { emmetHTML, emmetCSS } from 'emmet-monaco-es'
// Import language
// import 'monaco-editor/esm/vs/basic-languages/scss/scss.contribution.js'
// Import language service workers
// @ts-ignore
@maousan
maousan / docker-registry-mirrors.md
Created August 19, 2024 05:43 — forked from y0ngb1n/docker-registry-mirrors.md
国内的 Docker Hub 镜像加速器,由国内教育机构与各大云服务商提供的镜像加速服务 | Dockerized 实践 https://github.com/y0ngb1n/dockerized
@maousan
maousan / captureMouse
Created April 19, 2016 15:36
canvas mouse position
function captureMouse(elem) {
var mouse = {x: 0, y: 0};
elem.addEventListener("mousemove", function(e){
var x, y;
x = e.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
y = e.clientY + document.documentElement.scrollTop + document.body.scrollTop;
@maousan
maousan / dom.js
Created March 29, 2016 16:44
simple dom selector and iterator
var $dom = function (elem){
var _$ = document.querySelectorAll.bind(document);
function makeArray(arrLike) {
var arrLike = _$(elem);
return [].concat.apply([], arrLike);
}
Array.prototype.each = Array.prototype.forEach;
@maousan
maousan / jqappendTo.js
Last active March 29, 2016 15:53
jquery appendTo enhancement
$.fn.origAppendTo = $.fn.appendTo;
$.fn.appendTo = function(target) {
var $this = this;
if (typeof target == "string" && target == ":parent") {
return $this.origAppendTo($this.parent());
}
return $this.origAppendTo(target);
}
@maousan
maousan / beget.js
Last active March 15, 2016 05:49
beget
var obj = {
name: "maou"
};
Object.beget = function(o) {
var F = function() {};
F.prototype = o;
return new F();
}
@maousan
maousan / parseColor.js
Created March 5, 2016 10:09
parse rgb color
function parseColor(color, toNum) {
var rcolor = /[\d\.]+/g;
var components = typeof color == "string" ? color.match(rcolor) : null;
if (toNum) {
for (var i = components.length - 1; i >= 0; i--) {
components[i] = parseFloat(components[i]);
}
}
@maousan
maousan / checkArgs.js
Last active March 5, 2016 08:17
check callback arguments
var origBind = Function.prototype.bind;
console.log("hello");
Function.prototype.bind = function() {
console.log("DEBUG Custom Function Bind");
var args = Array.prototype.slice.call(arguments, 0);
if (origBind) {
return origBind.apply(this, args);
} else {
return function() {
var jqStyleAdd = function(arr, value) {
var i = 0, len = arr.length;
(function addClass(value, flags) {
if (typeof value === "function") {
arr.forEach(function(elem, j){
i = j;
addClass(value.call(elem, j, elem), true);
});
@maousan
maousan / deepConcat.js
Last active February 24, 2016 13:32
array concat deeply!
var jqStyleAdd = function(arr, value) {
var i = 0, len = arr.length;
(function addClass(value, flags) {
if (typeof value === "function") {
arr.forEach(function(elem, j){
i = j;
addClass(value.call(elem, j, elem), true);
});