カテゴリ: JavaScript 更新日: 2026/05/22

JavaScriptでブラウザのポップアップを開く方法|window.openで初心者でも簡単操作

JavaScriptでブラウザのポップアップを開く方法(window.openなど)
JavaScriptでブラウザのポップアップを開く方法(window.openなど)

先生と生徒の会話形式で理解しよう

生徒

「先生、JavaScriptでブラウザに小さいウィンドウを出す方法ってありますか?」

先生

「はい、あります。JavaScriptのwindow.openを使うと、新しいブラウザのウィンドウやタブを簡単に開くことができます。」

生徒

「ウィンドウとかタブって、具体的にどう違うんですか?」

先生

「タブは同じブラウザ内で複数ページを開く形式で、ウィンドウは独立した別の画面で開くイメージです。どちらもwindow.openで操作できます。」

生徒

「なるほど。では、簡単な例を見せてもらえますか?」

先生

「もちろんです。順番に基本から応用まで解説しますね。」

1. window.openの基本的な使い方

1. window.openの基本的な使い方
1. window.openの基本的な使い方

JavaScriptでポップアップを開くにはwindow.openメソッドを使います。これは「ブラウザに新しいページを開く」命令です。最も基本的な書き方は以下の通りです。


window.open("https://www.example.com");

このコードを実行すると、新しいタブで「https://www.example.com」が開きます。URLだけを指定した簡単な例です。

2. 新しいウィンドウを指定サイズで開く方法

2. 新しいウィンドウを指定サイズで開く方法
2. 新しいウィンドウを指定サイズで開く方法

ウィンドウのサイズを指定してポップアップを開くこともできます。widthheightをオプションとして指定します。


window.open(
  "https://www.example.com",
  "myWindow",
  "width=500,height=400"
);

このコードでは、幅500ピクセル、高さ400ピクセルのウィンドウを開きます。2つ目の引数はウィンドウの名前で、同じ名前を使うと同じウィンドウが再利用されます。

3. ポップアップでスクロールやメニューの表示を制御する

3. ポップアップでスクロールやメニューの表示を制御する
3. ポップアップでスクロールやメニューの表示を制御する

ポップアップでは、スクロールバーやブラウザのメニューバーを表示するかも指定できます。これもwindow.openのオプションで設定します。


window.open(
  "https://www.example.com",
  "popupWindow",
  "width=600,height=400,scrollbars=yes,menubar=no"
);

この例ではスクロールバーは表示されますが、メニューバーは非表示になります。ユーザーに見せたい情報に合わせて設定できます。

4. ボタンでポップアップを開く簡単な例

4. ボタンでポップアップを開く簡単な例
4. ボタンでポップアップを開く簡単な例

HTMLボタンをクリックしたときにポップアップを開くのはよく使うパターンです。


<button onclick="window.open('https://www.example.com', 'popup', 'width=400,height=300')">
  ポップアップを開く
</button>

クリックすると、幅400px、高さ300pxのウィンドウが開きます。これでユーザーの操作に合わせてポップアップを表示できます。

5. 同じウィンドウ名を使って開くと再利用される

5. 同じウィンドウ名を使って開くと再利用される
5. 同じウィンドウ名を使って開くと再利用される

ウィンドウ名を指定すると、同じ名前のウィンドウは再利用されます。例えば:


// 最初のウィンドウを開く
window.open("https://www.example.com", "myPopup", "width=400,height=300");

// 再度同じ名前で開くと、同じウィンドウが更新される
window.open("https://www.google.com", "myPopup", "width=400,height=300");

この場合、新しいページは前のポップアップに表示されます。新しいウィンドウは開かれません。

6. window.openの安全性とブラウザ制限

6. window.openの安全性とブラウザ制限
6. window.openの安全性とブラウザ制限

最近のブラウザは、勝手にポップアップを開くとブロックされることがあります。ユーザーがボタンをクリックするなど、明確な操作のあとに開くとブロックされにくくなります。


// ユーザーのクリックに連動
document.getElementById("popupBtn").addEventListener("click", function() {
  window.open("https://www.example.com", "safePopup", "width=400,height=300");
});

ユーザー操作に合わせて開くことが、ブラウザにとって安全と認識される方法です。

7. JavaScriptでポップアップを閉じる方法

7. JavaScriptでポップアップを閉じる方法
7. JavaScriptでポップアップを閉じる方法

開いたポップアップは、window.close()で閉じることができます。ただし、自分が開いたウィンドウしか閉じられません。


// ウィンドウを開く
var myWin = window.open("https://www.example.com", "closeTest", "width=400,height=300");

// 5秒後に自動で閉じる
setTimeout(function() {
  myWin.close();
}, 5000);

この例では、5秒後にポップアップが自動で閉じます。タイマーなどと組み合わせて、ユーザーに優しい表示が可能です。

8. ポップアップの活用例と注意点

8. ポップアップの活用例と注意点
8. ポップアップの活用例と注意点

ポップアップは、通知や簡単なフォーム表示、広告表示などに使われます。しかし、あまり多用するとユーザーに迷惑になるので注意が必要です。また、スマートフォンではポップアップが自動的にブロックされる場合もあります。


// フォームをポップアップで表示
window.open("contact.html", "contactPopup", "width=500,height=400,scrollbars=yes");

ユーザー体験を考えて、必要な場面でのみポップアップを使用するようにしましょう。

まとめ

まとめ
まとめ

本記事では、JavaScriptのwindow.openを使ったブラウザのポップアップの基本から応用までを詳しく解説しました。window.openは、新しいタブやウィンドウを開くためのメソッドで、URLだけを指定する簡単な使い方から、ウィンドウサイズの指定やスクロールバーやメニューの表示制御など、多様なオプションを設定することが可能です。ボタンのクリックなどユーザー操作に連動させることで、最新のブラウザのポップアップブロックにも対応でき、ユーザーに優しい動作を実現できます。また、同じウィンドウ名を使うことでポップアップの再利用が可能で、不要なウィンドウを増やさずに済むことも学びました。ポップアップの活用例としては通知、フォーム表示、広告表示などがありますが、使いすぎはユーザーにとって迷惑になるため注意が必要です。スマートフォンやタブレットなどでは自動的にブロックされる場合もあるため、ユーザー体験を優先した設計が求められます。

サンプルコードのまとめ

基本的なポップアップの例からサイズ指定やスクロール制御の例まで、学んだ内容をまとめたコード例です。


// 基本的な新しいタブを開く
window.open("https://www.example.com");

// サイズ指定のウィンドウを開く
window.open("https://www.example.com", "myWindow", "width=500,height=400");

// スクロールやメニューバーの表示制御
window.open("https://www.example.com", "popupWindow", "width=600,height=400,scrollbars=yes,menubar=no");

// ボタンクリックで開くポップアップ
document.getElementById("popupBtn").addEventListener("click", function() {
  window.open("https://www.example.com", "safePopup", "width=400,height=300");
});

// ウィンドウを開いて5秒後に閉じる
var myWin = window.open("https://www.example.com", "closeTest", "width=400,height=300");
setTimeout(function() {
  myWin.close();
}, 5000);

// フォーム表示用ポップアップ
window.open("contact.html", "contactPopup", "width=500,height=400,scrollbars=yes");
先生と生徒の振り返り会話

生徒

「先生、今回window.openについて勉強してみて、どういうときに使うのが良いのか少し分かってきました。」

先生

「そうですね。通知やフォーム、簡単な情報表示など、ユーザーが必要とする場面で使うと便利です。ただし、使いすぎると迷惑になるので注意が必要です。」

生徒

「ユーザー操作に連動させると、ブラウザのポップアップブロックにも引っかかりにくいことも学びました。」

先生

「その通りです。必ずボタンのクリックや明確なアクションに紐づけることが、ユーザーに優しい設計です。」

生徒

「同じウィンドウ名を使うことで再利用できるので、不要にウィンドウが増えないのも便利ですね。」

先生

「そうです。ユーザーのブラウザ上で無駄なウィンドウが増えないように設計できることも大切です。」

生徒

「スマートフォンだとポップアップがブロックされることがあるので、レスポンシブに対応する必要があることも分かりました。」

先生

「その通り。デバイスによる制限も考慮して、必要な場面だけで使うのがポイントです。今回の学習で、ポップアップの基本的な使い方から安全に使う方法まで理解できましたね。」

カテゴリの一覧へ
新着記事
New1
TypeScript
TypeScriptの関数に型をつける方法(引数・戻り値)を初心者向けに徹底解説!
New2
TypeScript
TypeScriptの始め方:開発環境の構築手順【初心者向け】
New3
TypeScript
TypeScriptでExpressのミドルウェアを型安全に定義する方法!バックエンド開発の初心者向け解説
New4
JavaScript
JavaScriptのfilterメソッドで条件に合う要素を抽出する方法
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptでフォームの値を取得する方法を徹底解説!valueプロパティの使い道
No.2
Java&Spring記事人気No2
JavaScript
JavaScriptでHTML5バリデーションAPIを使いこなす!初心者でもわかるフォーム入力チェック
No.3
Java&Spring記事人気No3
TypeScript
TypeScriptでコメントを書く正しい書き方と使い分け【初心者向けにやさしく解説】
No.4
Java&Spring記事人気No4
TypeScript
TypeScript学習におすすめの無料教材・リファレンスサイト【初心者向け】
No.5
Java&Spring記事人気No5
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.6
Java&Spring記事人気No6
JavaScript
JavaScriptで要素を削除する方法(removeChild, removeなど)
No.7
Java&Spring記事人気No7
JavaScript
JavaScriptでオブジェクト指向のカプセル化を学ぶ!初心者でもわかるクラスとプロパティの保護方法
No.8
Java&Spring記事人気No8
JavaScript
JavaScriptの現在日時を取得する方法を完全ガイド!初心者でもわかるDate.now()とnew Date()