JavaScript

JavaScript の String.prototype.split() の第二引数 limit は、ほかの言語と意味が違う

JavaScript の split メソッドを使ったら「あれ?」となったのでメモ。 一般的な spilt メソッド Java, C#, Ruby, Perl の split メソッドは、第二引数に limit を指定できます。 これを指定すると分割回数が制限されます。 (下記の例だと、文字列を2つに分…

Excelの表(QA表, 不具合表... etc)を、すごく検索しやすくするツールをさらに便利に使いやすくしました。

大好評だったExcelインクリメンタルサーチを、大幅にバージョンアップしました! Excelインクリメンタルサーチ Excelの表を、すごく検索しやすくするツールです。 (QA表, 不具合表... etc) サンプルはこちら! このツールを使うと、Excelの表をブラウザ上…

jQuery の :hidden セレクターは、遅い?

jQuery の :hidden セレクターは遅いのでしょうか? Excelインクリメンタルサーチのプロファイルをとっていたら、処理回数が多いと無視できないぐらい遅くなることがわかったのですが…。でも、理由がよくわからないです。 解析 まず、該当箇所(hidden セレ…

Excelの表(QA表, 不具合表... etc)を、すごく検索しやすくするツールを作りました。

最近、仕事でやたらExcelを使うようになったので、こういうツールを作ってみました。 Excelインクリメンタルサーチ Excelの表を、すごく検索しやすくするツールです。 (QA表, 不具合表... etc) サンプルはこちら! このツールを使うと、Excelの表をブラウ…

Canvas Library (Effect & Animetion) の構造を一新

Canvas Library (Effect & Animetion) *1をバージョンアップしました。 Canvas Library (Effect & Animetion) とは?HTML5 の canvas にエフェクトをかけるライブラリです。 まだ数は少ないですが、結構きれいなエフェクトがかかります! ぜひ、下記のページ…

JavaScriptでフォーカスが当たっている要素を取得する方法

Firefox & GoogleChrome 用の greasemonkey「Add Tab Index for Google」をバージョンアップしました。 Add Tab Index for Googleとは?Googleの検索結果ページを3倍ぐらい使いやすくするためのgreasemonkeyです。 [1]検索結果の最初にフォーカスが当たる (E…

canvas の getImageDataが少しめんどくさい(特にローカルで動かす場合)

egg (JavaScript Effect Library)にモザイクイン・モザイクアウトを追加しました。 egg とは?HTML5 の canvas を使った画像エフェクトライブライブラリです。 まだ数は少ないですが、結構きれいなエフェクトがかかります。 Firefox, Google Chrome をご利用…

canvas を使った画像エフェクトライブラリ

HTML5 の canvas を使った画像エフェクトライブラリ「egg」を公開しました。 egg とは?HTML5 の canvas を使った画像エフェクトライブライブラリです。 現在は粒子エフェクトのみですが、結構きれいなエフェクトがかかります。 Firefox, Google Chrome をご…

GoogleChromeだと、drawIndex でエラーが出ることがある

Google Chrome で canvas をいじっていたらこんなエラーが。 Uncaught Error: INDEX_SIZE_ERR: DOM Exception 1 Firefoxだと動くのになんでー?って思ったら、drawIndex で範囲外をコピーしようとしていたことが原因でした。 context.drawImage(img, sx, sy,…

Add Tab Index for Google の対応ブラウザに Google Chrome 5を追加

greasemonkey「Add Tab Index for Google」をバージョンアップしました。 Add Tab Index for Googleとは?Googleの検索結果ページを3倍ぐらい使いやすくするためのgreasemonkeyです。 [1]検索結果の最初にフォーカスが当たる (Enterキーを叩くだけで検索結果…

3値理論はデータベースに限った話じゃない

今日、データベースに入れる値がNULLか空文字かでちょっとした論争に。 個人的には「データがないんだから"NULL"」だと思ったんですが、「空文字でいいじゃん」と「決まりはないけど他が空文字だからここも空文字で」という二対一で負けました。 NULL撲滅委…

location.replaceで#が外せない

先日ちらっと書きましたが、Add Tab Index for Googleの「ブラウザの戻るでGoogleを表示すると元の場所にフォーカスが合わない」バグを直すのに、URLに#〜を付加して直すというのをやってみました。狙っていた処理の流れは、 ページを離れる瞬間に、URLの#以…

Google.comは検索結果の表示にAjax使ってる!!

Add Tab Index for Googleの修正をしようとして気付いたんですが・・・。 Google.comは検索結果の取得から表示までAjaxで行っています。 (注:書いてから調べたんですが、一部ユーザのみのようです。これについてはこちらの方のサイトが詳しいです) 最初は検…

document.getElementsByClassNameがネイティブ実装されている

クラス名でDOM要素を取得できれば便利なのに・・・と思っていたらあったんですね。 Document.getElementsByClassName() - Web API | MDN JavaScriptライブラリがなくても、IE8以外の最新の(HTML5ドラフトに対応している)ブラウザではなにもせずに使えるみた…

attachEventが動かない

ちょっと自宅で試したいことがあって、こんなコードを書いたらなぜか動かなかった。 document.attachEvent("onClick", testFunc); ・・・すぐに気づいた人もいるかと思いますが、 document.attachEvent("onclick", testFunc); 正しくは「onclick」ですね。 …