大人から子供まで、親しみを込めて皆が毎日使って
いるであろう、ブラウザを閉じるJavaScript

 「window.close()」

これが何故か動かない。

「こんなシンプルなコード間違えるはずは…」と思いつつ
コピペしたり一字一句打ち直したりしてみたがやはり駄目。

もう何が何やら訳がわからず

「もしや私が寝ている内に新しいHTMLの仕様がW3Cで決まり
対応ブラウザが一晩で広まったのではないか…?」

などとおかしなことを考えたりもしたが、そんなことが可能なら
明日から全てのサイトがHTML5対応だな、などと一人ツッコミを
しつつググること5分。

>>直接URLを指定したり、通常のリンクで開いたページは
>>JavaScriptのwindow.close()で閉じることはできません

ん?これは一体?

>>一般的には…や
>>JavaScriptを使用して開いたページでwindow.close()を
>>使用します。

つまりはどこかのページから「window.close()」のあるページを
「_blank」などで開かないとダメということらしい。

【テスト用】
1.このページのURLをコピー
2.新しいタブ、ウィンドウを開く
3.1でコピーしたURLを貼り付けてこのページを開く
このページを閉じる

※ 注意 ※
いきなりリンクをクリックするとこのページが閉じて
しまうので1~3の手順を踏んでからクリックしてください

自分の場合、Flashからjavascriptを呼びだしていたので
てっきりFlashPlayer側の制限かと思い込み見事にハマる。

flash.jpで上級者と質問者のやり取りがかみ合って
いなかった理由もこれで納得。

いやはや、今さらながらWEB制作は奥が深い…。


コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください