本気でやるなら innerHTML を活用すべき

本気でやるならonclick属性は避けてライブラリを活用すべき - VTuberになったプログラマーの魂の残滓僕は逆に onclick 属性を多用してしまいます。 たぶん『本気』の度合いが違うんだと思います。 『デザイナーとの分業の点からみれば使用しないほうが好まし…

Array.shiftの罠

prototype.js 1.4 では IE5 とかのため?*1に Array.shift を独自に実装している。 Array.prototype.shift = function () { var result = this[0]; for (var i = 0; i < this.length - 1; i++) { this[i] = this[i + 1]; } this.length--; return result; } …

JavaScriptの怖い話

prototype.jsのバージョン1.5.xを使っていたコードでした。そのコードはElement(prototype.jsが定義したクラス)のオブジェクトに独自に select というプロパティを加えていました。用途はフラグ変数でした。prototype.jsのバージョンをv1.6.0.2に上げた時、…

JavaScripでハッシュテーブルを実装してみた

JavaScriptで実装してもまったく意味ない(笑)ただの練習です。 こんな感じでいいんだろうか? String.prototype.hash = function(mod) { var sum = 0; for (var i = 0, len = this.length; i < len; i++) sum += this.charCodeAt(i) * i; return (mod) ? (…

ニコニコが会員登録なしで見られるようになった

3月5日よりニコニコ外部プレーヤーが実装されるサイトは、次の各サイトになります(50音順)。●So-net ブログ ●trunc ●はてなダイアリー ●livedoor Blog対応サイトは順次追加予定ですこれでニコニコ動画で生まれる様々な作品をさらに広く多くの人に広められ…

JavaScriptのスコープとGoogleの謎

var x = 'hoge'; { var x = 'fuga'; } alert(x) //-> 'fuga' この挙動をちゃんと理解していなかった。 言い訳になるかもしれないが、使う機会がないからだ。JavaScriptではこの場合、中括弧はあってもなくても同じ動きをする(多分)。 ところが、Google Rea…

Greasemonkeyその他でbindを使うための最小セット

僕がGreasemonkeyで何か作るとき、何はなくともbindだけは欲しくなる。でもGreasemonkeyスクリプト程度でライブラリを丸々読み込むのは、無駄が多いだけでなく他のブラウザーへの移植性の面からみてもよろしくない。 prototype.jsのbindを使いたければ最低限…

ubuntuのGnome端末でSCIMの切り替えができなくてイライラする

ずっとタイトルの問題に悩まされてきました。 Firefox等でSCIMをオンにするとGnome端末に移動してもSCIMがオンのまま、 オフにしたくても端末上で切り替えができない、 わざわざFirefoxへ戻ってSCIMオフにしてまた端末へ・・・ SCIMの設定で「Share the same…

SpiderMonkeyで外部の.jsファイルを読み込む

JavaScriptでアルゴリズムの修行とかちょっと長いコードを扱うときは、FirebugよりもSpiderMonkeyを使ったほうが便利だったりします。 SpiderMonkeyで外部の.jsファイルを読み込むときにはload関数を使います。 hamabebe@toranoana ~/workspace/js % js js> …

JavaScriptを最速で評価する方法

Firefoxでは、ブックマークに対してキーワードを指定することで、アドレスバーでそのキーワードを打ち込むとそのブックマークに飛ぶことができます。 その際、キーワードの後ろに文字列を与えると、アドレス中の%sと置き換わる。つまりこんな感じにブックマ…

Firefox3でunsafeWindow内オブジェクトのprototypeがいじれない

昨日のエントリで書いたスクリプトを自分用にグリモン化しようとしてハマった。Firefox3 の Greasemonkey, unsafeWindow 内の prototype がとれない - 冬通りに消え行く制服ガールは✖夢物語にリアルを求めない。 - subtechhttp://unknownplace.org/memo/2007…

Googleの難読化されたJavaScriptと戦うための戦略

Google ReaderのスペースキースクロールをLDR風にするbookmarklet javascript:(function(){$.prototype.qh=function(a){if(this.ka&&!this.Ee||!this.Ka)return;var b=this.Ee?u(PD):this.ea();b.scrollTop+=a?+100:-100};$.prototype.down=function(a){this…

第2回1000speakersに行ってきた

たいそう刺激を受けまして、こうしてブログを始めようと決意しました。始めるからにはできるだけ毎日書いていきたいのですが、 現在4時で、6時までに記事を書き終わらなきゃはてダの日付が変わって さっそく躓くことになっちゃうので焦ってます>< 1000spea…

はてな記法の練習

これぐらい覚えればいいのかな 小見出し "**"をつけると小見出し。 小々見出し "***"をつけると小々見出し 引用 引用テスト ">>〜〜 pre記法 整形したテキストをそのまま表示します(pre) hoge ">|〜〜| スーパーpre記法 整形したHTMLなどのソースをそのま…