Skip to content

Instantly share code, notes, and snippets.

@adamay000
adamay000 / AutoResume.js
Created May 28, 2021
chrome://downloads/の一番上のやつ自動で再開させる
View AutoResume.js
// 90.0.4430.212
setInterval(() => {
const button = document.querySelector("body > downloads-manager").shadowRoot.querySelector("#frb0").shadowRoot.querySelector("#pauseOrResume");
if (/再開/.test(button?.textContent)) {
console.log("再開");
button.click();
}
}, 1000)
@adamay000
adamay000 / app.js
Last active Nov 14, 2018
CanvasでHMRするときの基本
View app.js
/**
* hmr前後で引き継ぎたいデータはまとめて外出する(Store)
* Storeを書き換えた場合はページをリロードするか、もしくは別途accept()の処理を書く
* Storeはconstructorの引数でどんどん子孫に渡していく。必要ならDIなりdecoratorなりでコードをキレイにする
*/
/** @type {Assets} 一度だけロードすればいいやつとかはまとめておくと良い */
let assets = null;
/** @type {Store} 復元したいデータは全部外にまとめておく or serialize的な保存・復元の方法が必要 */
let store = null;
@adamay000
adamay000 / devserver.css.client.js
Created Oct 18, 2018
css hot reload with webpack-dev-server
View devserver.css.client.js
var url = require('url');
var socket = require('webpack-dev-server/client/socket');
function getCurrentScriptSource() {
// `document.currentScript` is the most accurate way to find the current script,
// but is not supported in all browsers.
if (document.currentScript) {
return document.currentScript.getAttribute('src');
}
// Fall back to getting all scripts in the document.
@adamay000
adamay000 / kana.js
Last active Jan 30, 2018
オレオレkana
View kana.js
// 入力から学習した漢字->ひらがなのマッピングを入れる
const mapping = {};
// 漢字の部分を取得するための正規表現キー
// 漢字としているが、実際にはひらがな以外の文字で、カタカナなども含む
const KANJI = '(.+)';
/**
* 学習した漢字->ひらがなのマッピングを適用して学習済みの漢字をひらがなに置き換える
* @param {string} _word
@adamay000
adamay000 / App.js
Last active Dec 16, 2019
webpackでjQueryプラグインを使う
View App.js
// 使える!!
$('body').velocity();
// ただし、下記のようにどこかしらでVelocityを参照していないとプラグインを読み込んでくれない
// 結局のところエントリポイントのファイルとかでimport 'jquery-velocity';読んでおくのがベターな気がする
Velocity;
@adamay000
adamay000 / status-bar-tap-event.html
Created Jul 1, 2016
google mailでステータスバーをタップしたときのイベントを取っているような動きの再現
View status-bar-tap-event.html
<!DOCTYPE html>
<html>
<head>
<title>status-bar tap event</title>
<meta name="viewport" content="width=device-width,initial-scale=1">
</head>
<body style="margin: 0;">
<div id="hidden-header" style="position: relative; z-index: 2; background: #808080;">hidden-header</div>
<div id="header" style="position: relative; z-index: 2; background: #cccccc;">header</div>
<div id="container" style="overflow: auto; position: relative; z-index: 1;">
@adamay000
adamay000 / flexbox.txt
Last active Jun 22, 2016
リストで列ごとに高さ合わせた2カラム作る時のメモ
View flexbox.txt
https://jsfiddle.net/62mtbcc4/
@adamay000
adamay000 / App.js
Last active Jun 15, 2016
babel-plugin-mjsxを利用してベタ書きしたhtmlをdocument.createElementで作る
View App.js
import DomRenderer from './DomRenderer.js';
const title = 'title';
document.body.appendChild(DomRenderer.render(
<dummy>
<h1>{title}</h1>
<button callback={onClick}>button</button>
</dummy>
));
@adamay000
adamay000 / entry.js
Created Jan 24, 2016
intern_description
View entry.js
var main = require('./module/main.js');
main.load('assets/js/data.json');
@adamay000
adamay000 / async-test-1.js
Last active Dec 21, 2015
実行タイミング理解してるかチェック
View async-test-1.js
var zero = +new Date()
, now = function(){ return +new Date() - zero; }
, wait = function(time){ var start = now(); while(now() - start < time){}; };
console.log('start:', now()); // #start: 0
// ========================================
setTimeout(function(){
console.log('async:', now()); // #async: ?
}, 1000);
wait(1500);