2013-01-17 18 views
28

私は自分のウェブページに近いリンクを持っています。私はそれをクリックすると、現在のタブを閉じるためにそれを機能したいと思います。私は書いた現在のタブを閉じる

<a href="#" onclick = "javascript:self.close();">close</a> 

上記のコードは、Internet Explorerでうまくいくようです。 Mozilla FirefoxやGoogle Chromeでは動作しません。これを解決するために私を助けてください。

+2

使用はwindow.close() http://stackoverflow.com/questions/2076299/how-to-close-current-tab-in-a-browser-window – gurvinder372

+1

なぜあなたは必要ですかタブにすでに閉じるボタンがある場合 – Eevee

+0

@ gurvinder372 - 助けてくれてありがとうございますが、動作していません。 – uvinod

答えて

30

自分で作成したウィンドウ/タブのみを閉じることができます。つまり、ユーザーが作成したウィンドウ/タブをプログラムで閉じることはできません。

たとえば、window.open()でウィンドウを作成する場合は、window.close()で閉じることができます。

+0

あなたの答えをありがとう。おそらくInternet Explorerで動作しているのでしょうか? – uvinod

+3

わかりませんが、IEには時には独自の方法があります。 –

+0

@ustasb後で閉じる可能性を持たせるには、どうすればwindow.open()を実行できますか?私は実際にどこにwindow.openを置くべきか理解していません。スクリプトタグの中の頭の部分にそのコード行を入れました。そして、意味をなさない別のタブを開いていますが、私は閉じたくありません。新しいウィンドウが開いている、現在のウィンドウを閉じたい。何かアドバイス? – RicardoGonzales

-2

使用この:

window.open('', '_self'); 

Chromeでのみ有効です。それはバグです。 これは将来修正される予定ですので、このハックな解決法を念頭に置いて使用してください。

+0

動作しません、chrome 44. – shinzou

+0

バージョン50.0.2661.102で動作しませんm –

-2

はこれを試してみてください:クローム46のよう

window.open('', '_self').close(); 
+1

Chromeで動作しません44. – shinzou

+1

はChrome 45.0.2454.101 – naoko

+0

Chromeバージョン49.0.2623.112 m で動作しません。 –

5

、シンプルonclick=window.close()は、トリックを行います。複数のタブが開いている場合は、ブラウザ全体ではなく、タブだけが閉じられます。

-1

ことは、これを試してみてください:

<script> 
    var myWindow = window.open("ANYURL", "MyWindowName", "width=700,height=700"); 
    this.window.close(); 
</script> 

これは、Google Chromeの50でいくつかのケースでは私のために働いjavascript関数内に置くときには、しかし、動作するようには思えません。

+1

これは、「this」はこの文脈では「ウィンドウ」を指し、関数のコンテキストでは関数を指しているからです。 'this.window'はちょうど' window'です。 – Carpetsmoker

1

下記のJavaScriptを使用できます。あなたは、コード

<a href="javascript:close_window();">close</a> 

の下に使用することができますHTMLで

window.open('','_self').close(); 

私はそれが正常に動作しているクロム61とIE11でこれを試してみました。 しかし、これはFirefox 57では機能しません。 Firefoxでは、以下のコマンドを使用して開いたウィンドウのみを閉じることができます。

window.open() 
関連する問題