instanceofが失敗する
テキストノードだと普通は instanceof Text とすると true が返ってくれるのだけど、エラーになることもあるんだ。
ここで適当にノードを拾って instanceof Text をやろうとすると、以下のようなエラーが。(Opera の場合)
JavaScript - http://la.ma.la/blog/
Javascript URL thread: "javascript:var a=document.getElementsByTagName('p')[0].firstChild;alert(a instanceof Text);void(0);"
Error:
name: TypeError
message: Statement on line 1: Second argument to 'instanceof' does not implement [[HasInstance]]
Backtrace:
Line 1 of unknown script
var a=document.getElementsByTagName('p')[0].firstChild;alert(a instanceof Text);void(0);
stacktrace: ...よくわからん。Text オブジェクトのプロパティで HasInstance が無いとダメってことかな?
しかも他のサイトでは大丈夫なのに何故ここだけ?
うーん。
Firefox だったら下のようなエラー。
Error: invalid 'instanceof' operand Text
Source File: javascript:var%20a=document.getElementsByTagName('p')[0].firstChild;alert(a%20instanceof%20Text);void(0);
Line: 1Safari なら false とアラートが出るな。しかし nodeName だとちゃんと #text なのに…