JavaScriptでウィンドウを閉じるボタンを実装する方法

現在開いているウィンドウを、任意のボタンまたはリンク等をクリックしたときにJavaScriptを使用して閉じる方法を紹介します。

HTMLで閉じるボタンのコードを記述

単純に考えるとアンカータグやボタンタグに onClick="window.close();" を追加すれば実装できそうな気がしますが、実際にはこれだとブラウザによってうまく挙動しないケースがあります。

FireFoxでは独自の仕様により、「onClick=”window.close();”」を設置しても実行されません。

以下のように記述すればほぼすべてのブラウザに対応するようです。

<p><a href="javascript:window.open('about:blank','_self').close();">このページを閉じる</a></p>

一度対象のウィンドウに対して空のタブを開き、JavaScriptの操作を可能にして、その後に「close();」を実行しています。

なお、この方法を用いても、FireFoxでタブを利用してウィンドウを開いている場合、ページは非表示になりますがタブ自体は残ってしまいます。
これはブラウザ側の仕様なので無視するしかないようです。
ちょっと残念ですね。