読者です 読者をやめる 読者になる 読者になる

銀の弾丸

プログラミングに関して、いろいろ書き残していければと思っております。

SVGの重なり順序を操作する「svg-z-order」

JavaScriptで、SVG要素の重なり順(Z-Order)を操作するモジュール svg-z-order をnpmで公開したのでご紹介。 SVGの図形の要素はドキュメント内での定義順に、奥から手前へ向けて描画されますが、 これを変更するには要素を並べ替えるしかありません。 HTML/…

D3.js v4 でドラッグするには d3.drag() で behavior を取得する

D3.jsでドラッグイベントを処理する必要があったのですよ。 ほぼ初めてのD3ですからグーグル先生にいろいろ聞いて、「ほうほうなるほど」と学習していたのですけど、 ドラッグに関して各所で示されていたサンプル通りにやってみたら、まさかのエラー。 結局…

JavaScriptのラムダ式(アロー関数)は丸括弧で括らなければ即時実行できませんのね

Node.jsで以下のようにラムダ式を即時実行していたのですが、ブラウザでは構文エラーとなって動かないんです。 (()=>{ console.log("これ動きません"); }()); まさかコレが動かないとか思いもよらず。 どう見直しても問題があるとは思えなかったのだが動かな…

JavaScriptでマイクロ秒単位の定期処理を実行する(npm fractional-timer)

JavaScriptで1ミリ秒より短いインターバルタイマー処理を提供するモジュールのご紹介。 実際のところ、精度はよくありませんので、クリティカルな用途には向きません。 単純な処理をなるべく高速にタイマーで実行したいけど、標準タイマーの1ミリ秒では遅す…

npm 「hash-arg」 ― コマンドラインパラメータに名前でアクセス

コマンドラインで指定されたパラメータに名前でアクセスする為の、シンプルなNode.jsのモジュールをnpmで公開したので御紹介。

Node.jsで正常終了:process.exit(0) は呼ばないほうが良いですね

「ダメ!絶対!」ということでも無いですが、Node.jsで、正常終了するとき、`process.exit(0)`と明示的に呼び出さないほうが良いですねっていう小ネタです。いや、引数0は省略できるとか、そういうことではなくて。

ブラウザでマルチスレッド ― JavaScriptのWeb Worker を使用してサブスレッドと通信する(応答をコールバックで受けとる機構を実装する)

ブラウザで動作する8ビットマイコンのエミュレーターを作っており、動作速度と安定性を確保するため、Web Workerを使用したので、そこで得られた知見などを書いてます。

テキストを日本語的に傍点(圏点)で強調するJavascript

ふと思いついてテキストに傍点をつけるためのスクリプトを作りましたので、ご紹介。(ソースはGitHubに置いてます) 「傍点」は「圏点」ともいうらしいのですが初耳でした。この文書では以降「傍点」で通します。 「傍点によるテキストの強調」は、CSS3のtex…

jQueryプラグインを正しく簡単に作る方法

キチンとしたjQueryプラグインを簡単に作れるようになる関数のご紹介。 javascriptのクラスを作れる人なら、「jQueryプラグインはjQuery.fnに~」とか、「メソッドチェインをするために~」なんてことを詳しく知らなくても大丈夫。

jQuery UIで普通のテキスト入力を少し立派に見せるjQueryプラグイン

フォームのテキスト入力項目の見た目を、jQuery UI の spinner(スピンボタン付き数値入力ウィジェット)と同じようにする、jQueryの簡単なプラグインです。spinnerのスタイル(CSS)を利用するので、jQuery UI も必要です。 spinnerは結構高さがあって、ボタン…

日付入力スピンボタンとdatepickerとの併用

日付入力用のspinnerです。例によってjQueryとjQuery UIが必要です。 datespinner: 以下のように、datepickerと同時に使えます。 datepickerだけではテキストボックスにテーマのスタイルが適用されないようですが、spinnerを使えばOKです。 datespinner(with…

時刻入力スピンボタン

時刻入力用のspinnerです。時分のみ入力します。秒も入力したい場合は追加コードが必要です。 jQuery UI の spinnerをカスタマイズしたものですので、jQueryとjQuery UIが必要です。 timespinner: ウィジェットの値としてはシーケンシャルな分の値になってる…

jQueryでフォーム部品のcheckedやselectedはpropで操作する

よく勘違いして慌てているので書いておきます。 フォーム部品のcheckedやselectedといったbool型のプロパティの操作は、propを使用する。以前はattrを使っていた記憶がありますが、それではちゃんと動いてくれないです。 いちご みかん りんご いちご みかん…

入力日付をチェックする関数

文字列として入力された日付が正しいかどうかをjavascriptで判定する関数です。うるう年などの関係で、ややこしそうに思いますが、javascriptなら意外にあっさりしています。

フォームのリセット時にjQuery UIのselectmenuの表示もちゃんと更新する

jQuery UI のselectmenu は、フォームがリセットされても表示が元に戻らないみたいですね。 以下のようにして解決。 $("input[type='reset']").button() .click(function() { window.setTimeout(function() { $("[name='sel']") .selectmenu('refresh'); }, …

はてなブログでjQueryを普通に使う

jQueryやっぱり便利ですね。単純な処理では不要論もありますけど、お手軽さがいい。 はてなブログでも、jQueryが標準で読み込まれていますが、残念ながらHEADやコンテンツ内で、そのままでは利用できないです。 ページの体感的な描画速度の向上のため、jQuer…