FAQ: XSL Transformations (XSLT) in Mozilla

document.writeの辺り参照。XHTML1.1ならDOM level2 HTML対象外だからサポート外で納得できるが、XHTML1.0ではどうだとか、xsl:output method="html" ではどうだとか、色々な疑問が渦巻いたり。とりあえずサポート外だろうがなんだろうが、document.implementation.hasFeature('HTML', '2.0')がtrueだったら問答無用という方針で。

Bugzillaの件は有難う御座いました。(私信)

ゴッドバーガー(Engrish.com)

個人的にタイムリーなツボを突かれた。

Basic use of the RDF and Versa API in 4Suite
VersaRDF照会言語)

さあ遊ぶぞー。

原因究明は難航中

じつは NN7.1 でも閲覧できますよ、という話があるんです。困りましたね、これは。

私の環境では、何故か履歴で戻るといつの間にか表示されていたりして、かなり不思議な挙動です。それはともかく、徳保さん的にはやはり将来を見据えたスクリプトが好ましいのでしょうし、そういう態度を期待?していますから、バグの原因云々より先にまずブラウザの独自拡張(メソッド|アトリビュート)の方に気遣って貰いたい気がします。弱い希望ですけれど。

例えばここ:

 if(document.all)
  obj.insertAdjacentHTML('beforeBegin',
      '<div class="selectsheet">'+nHTML+'</div>');

document.allがundefinedでないブラウザが、insertAdjacentHTMLメソッドを実装していると、どうして分かりましょう。

if (obj.insertAdjacentHTML)

とすべきではないでしょうか。これにしたって同名の違うメソッドである可能性も否定できませんから、万全ではない(何の保証もない)。とすれば、何らかの標準的な規格、例えばDocument Object Modelにあるメソッドを使用した方がベターなのではないでしょうか(因みにUserAgent名で判別する人も多いようですが、あんなもののどこに一意性があるでしょうか)。

 else{
  var nDIV=document.createElement('DIV');
  nDIV.innerHTML=nHTML;
  nDIV.className="selectsheet";
  obj.parentNode.insertBefore(nDIV, obj); 
 }

ここのcreateElementメソッドで作成されているのはDOM level1 HTMLのHTMLDivElementインターフェイスをもったオブジェクトです。このオブジェクトにinnerHTMLアトリビュートは定義されていませんから、何かを代入しても表示上何も起こらないのがDOM的に見て標準動作です。ECMAScriptでなかったらまずエラーでは。

皆やっていることですし私もやっていましたが、徳保さんにはやって貰いたくない気がします。私はinnerHTMLの書き換えが低速だからやらないだけですが。あと、将来性を考えるなら広域変数をもう少し減らした方がお得だと思いますがどうでしょうか。

崎山伸夫のBlog - このけがらわしいものを踏みくだけ!

というか、この人のように「徳保批判」をしているのだと思われたら嫌だなあ。それにしても気になっていたのだけれど、どうやら私はどうしようもない屑を相手にしてしまったようだ。って、徳保さんの過去の言動を調べもせず勝手に言及しておいてこの言いようはどうだろう。きちんとした目的意識を持ってBlogとやらを書く場合、余程奇天烈な目的を持っていない限り会ったこともない人を「屑」呼ばわりするという選択肢はありえないのだけれど。

ドイツ文学ファンとしては「やーいニーチェも知らないのか」的な発言には黙っていられない感じだけれど、釣られてたまるかと。専攻したわけでも薀蓄があるわけでもなし。ただ、ニーチェ哲学は研究・批判の対象にはなっても、何か都合の良い命題を抽出して場当たり的にビリーフ(社会心理学用語)に組み込んだり、自信をもって人を屑呼ばわりするための保険に利用するといった類のものではないと、私は思うのだが、しかし虎の威を借るスノッブはそうは思わないらしいな。