JavaScript

今日の衝撃

IE(6sp2と7RC1で確認)では以下の単純なコードがうまくいかない。DOMは正しく挿入されているのに主要なブロックのサイズが全部0になってしまい表示されないのだ。 <script type="text/javascript"> function addTable() { var table = document.createElement('table'); var tr = document.cr…

Dojo 0.4.0 リリース

トップにはまだ。ベースを0.4.0に入れ替えてあっさり動いた!と喜んだらキャッシュが効いていただけの罠。頼むからもうちょっと詳しく書いてくれというリリースノート(http://dojo.jot.com/WikiHome/Release0Point4)。今回の目玉はgfxでしょうかね。

クロージャの理解がテキトーだと引っかかる罠

まあ当然のように皆が通る道(→イベントに渡される関数オブジェクトをインスタンスのメソッドだと誤解してしまうミス)もハマったわけですが、それは克服した上でさらにはまったのが以下のような罠。ボタンが5つあって(idはbutton_1〜button_5)、それぞれに…

Internet Explorer上でのデバッグ事情

Firefoxはその拡張機能の便利さによって、Web開発時に手放せないツールとなった。具体的にはFireBugとWeb Developer。この2つがあることによって効率は段違いであり、以前(一年前くらい?まで)は「時間がないからIEのみ対応!」だったところが逆になり、IE…

Aptanaすげー

Dojoの情報を探していて偶然見つけたAptana.com。Eclipse Public Licenseのフリーソフトウェアで、"The Web IDE"だそうだ。有名なAjaxライブラリ(Prototype.js, Scriptaculous, YahooUI, Dojo, RICOなど)に対応していて、Ajaxアプリを開発するときに総合的に…

Dojoをちょっぴり真面目に網羅的に調査 dojo.lang編(1)の続き

dojo.lang.mixin()とextend()の続き 一応テストしてみる。 load("dojo.js"); dojo.require("dojo.lang.*"); var a = new Object; a.hoge = function() { print('hogehoge'); }; var b = new Object; dojo.lang.mixin(b, a); a.hoge(); // hogehoge b.hoge();…

Dojoをちょっぴり真面目に網羅的に調査 dojo.lang編(1)

dojoはドキュメントがほぼないのが最大の難点(公式wikiにちょっとはあるけど)なので、調査がてらソースを手当たりしだい読んでみる。まずはdojo.lang周りから。対象バージョンは先ほど落とした7月24日のnightly buildとする。(最新リリースの0.3.1からいく…

dojo.io.bindで送信した日本語文字列が化ける

同じ罠にはまったのでメモ。dojo.io.bindに日本語文字列をコンテンツとして渡し、サーブレット側でgetParameterで取った時に&#XXXXX; 形式で表示されて困りますというお話。 ちゃんとGETで来てることを確認。でも日本語を入力すると&#12395;&#12388;&#12376;…

今さら感があるけどprototype.js

prototype.js(ver1.4.0)を使ってみたが、いくつかの罠にはまったのでメモ。ブラウザ上のJavaScriptに詳しい人が見たら当たり前のことばかりかもしれない。 Event.observeする場所 (悩んだ時間:15min.) ↓こんな記述をすると思ったように動作しない。 (alertが…