宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能!
なんかまた違う問題がポロポロと出てきましたよ?
タブを並べ替えたり消したりしてあれこれしてたらエラーが出るようになって、原因を探っているうちに、どうもタブの配列?がおかしくなってるらしいということに気がついた。gBrowser.mTabs
はアクセスするとgBrowser.mTabContainer.childNodes
を返すgetterになっていて、まあ、この二つは詰まるところ同じ物のように扱ってるんだけど、この、gBrowser.mTabContainer.childNodes
が時々おかしくなるようだ。インデックスの範囲を超えた範囲の要素にアクセスしても、undefined
にならずに、要素ノードを返すことがある。
例えば見た目上は4つのタブが開かれていて、gBrowser.mTabContainer.childNodes.length
を見ても要素の数は4と返ってくるんだけど、gBrowser.mTabContainer.childNodes[4]
にアクセスしたら何故か要素ノードが返ってくる(本当はgBrowser.mTabContainer.childNodes[3]
までにしかアクセスできないはず)。これ、JavaScript 1.6の仕様変更に伴う挙動の変化ですか?
とにかくこのせいで、nodelist[index]
にアクセスしてundefined
が返ってくるかどうかで添え字がインデックスの範囲を超えてるか超えてないかを判別していた部分が誤判定を起こすようになってしまっていた。
こんなの、他にどれだけあるか分からんよ……よう探しきれませんorz
の末尾に2020年11月30日時点の日本の首相のファミリーネーム(ローマ字で回答)を繋げて下さい。例えば「noda」なら、「2005-09-16_tbe-bug3.trackbacknoda」です。これは機械的なトラックバックスパムを防止するための措置です。
writeback message: Ready to post a comment.