※記事見出しをちょっと変更。以前は「第3引数を指定した window.open が NoScript のおかげで動きが変に見える」でした。(2007-07-05)
Windows XP Pro. SP2 + Firefox 2 + NoScript で、
A.html の以下のようなリンクをクリックして B.html を新しいウインドウで開き、
<a href="B.html" onClick="window.open('B.html','_blank','width=400');return(false);" >B.html</a>
開いた B.html で以下のようなリンクをクリックしても動作しない。
<a href="javascript:void(0);" onClick="window.close();">close</a>
さらにその(B.html の)ウインドウでコンテキストメニューが表示されなかったりショートカットキーがきかなかったり、と Firefox の動作がおかしくなる(別のウインドウには影響はないようにも見える)。
上記リンクをクリックしたタイミングで、Firebug 1.05 は以下のようなエラーを報告している。
[Exception... "'JavaScript component does not have a method named: "isTabContentWindow"' when calling method: [nsIBrowserDOMWindow::isTabContentWindow]" nsresult: "0x80570030 (NS_ERROR_XPC_JSOBJECT_HAS_NO_FUNCTION_NAMED)" location: "
" data: no]
しばらくイライラしながらこの現象に悩まされていたが、あれこれ試した結果 NoScript をアンインストールすれば発生しないことが分かった。
手元の NoScript 環境のバージョンは 1.1.4.9.0.070622 + Forefox 2.0.0.4 。
作者の Giorgio Maone さんには簡単にメールで報告してみた。
ちなみに第 3 引数を指定しない window.open ではこの現象は発生しない。
#悩んで時間を使ってしまってたけどちょっと進行したので今日はもういいやと速攻帰ろう(笑)
追記:
返事を頂けたがなんてこった、どうやらこの問題は既に FIX されていたらしい。自動アップデートはタイムラグあるからすぐに最新にするには手動でダウンロードしてねってことらしい。明日確認しよう。