• ベストアンサー

ウィンドウを閉じたら、アラート表示

ブラウザの×ボタンを押してページを閉じたり、他のページに移動したりした瞬間、 そのページはそのままで、 アラーとで、 「このページを本当に閉じますか?」  「OK」「キャンセル」 のどちらか選択できるようにするには どうしたら良いでしょうか。 もちろん「OK」ならページを閉じる 「キャンセル」ならそのままページを移動しない ご存知の方、いらっしゃいましたら、 ソースを教えて下さい。 よろしくお願い致します。

  • u2122
  • お礼率71% (125/176)

質問者が選んだベストアンサー

  • ベストアンサー
  • kuro917
  • ベストアンサー率100% (1/1)
回答No.2

onBeforeunloadイベントを使います。 ただし、確実に動くわけではないので注意してください。(ブラウザが未対応、javascript無効時など) 「onBeforeunload」で検索するか、以下のページを参考にしてください。 http://pentan.info/javascript/sample/onbeforeunload_note.html ※注:このページ自体がサンプルページのため、ページを移動しようとしたときにメッセージウィンドウが出ます。

u2122
質問者

お礼

そうです!こんな動作するやつです。 ありがとうございました!!

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

それは製作者のページから抜け出せない仕組みという意味ですね? その処理ができるようなら 「○○万円振り込まないとこの画面が閉じません」的なものが 作れてしまいます。 なので、その手の機能はブラウザにはついていません。

u2122
質問者

補足

ブラウザについていなないのは知っています。 それをJavaScriptで、どうにかできないもんかな、と。 「キャンセル」か「OK」を選択して、ページを閉じれるようにしたいです。

関連するQ&A

  • JavaScript ダイアログ確認の件で

    ホームページを開いていて、閉じるボタンをクリックすると、ダイアログが表示して、閉じる場合はOKボタン。キャンセルをクリックすると任意のページへ移動させるJavaScriptってどのようになっているのでしょうか? ソースを見て真似してみたのですが、上手く出来ませんでした。 どなたか、教えてください。よろしくお願いします。

  • alertの文字が表示されない

    adrieです。初めて利用します。 納品したプログラムでalertの文字が見えない、という現象が 起きているらしいのですが、そのような現象を見たことがある方は、 いらっしゃいますか? win98でie4.x~5.5の環境らしいのですが(顧客のマシン)、 私の周りにあるマシンでは再現せず、困っています。 alert自体は動作しているけれど、文字が見えない。 OKボタンのOKも見えないそうです。 (でもボタンらしきものはあって、押すとalertの次に書いてあるhistory.backが動作しています。) メモリヒープ時に起きているのでは?とも思ったのですが、 そうでもないようです。 同じマシンで他のページは見えるとのことなので、 そのページのファイルに問題があるのでしょうか? 何かお心当たりの方がいらっしゃいましたら、助けてください。

  • iPadでJavascriptのalert表示したままブラウザが固まっ

    iPadでJavascriptのalert表示したままブラウザが固まって、Safariのボタン類が全て反応せず、何も操作できなくなりました。 MacProならブラウザの上の×(バツ)を押してブラウザを閉じて再度、サファリを開けば問題なく使えますが、 iPadは閉じるボタンもなく、下の丸ボタンを押してブラウザと消して、サファリアイコンを開いても、問題の止まった画面で 何も操作できません。 このままでは、他のyahooページとか見たいのですが使えない状態で困っています。 関連してわからないことが他もあり、 1)iPadはマルチタスクでない?  2)下の丸ボタンで閉じても実はアプリが動作している。 3)設定 - 一般 - リセット で   すべでの設定をリセットやすべてのコンテンツと設定を消去   をすれば、戻るかなと思っていますが、   今までダウンロードしたアプリなど消える(?)もしくは再度購入する必要がある(?)と思って   現在は何もしていません。 iPadに詳しい方、教えてください。

    • ベストアンサー
    • Mac
  • 確認ダイアログの出し方

    下記の条件を満たす確認ダイアログの出し方を教えて下さい。 ・フォームのボタンではなくリンクテキストで実行 ・リンククリックでダイアログ表示、OK選択でリンク先に移動、キャンセル選択で移動なし(元のページを表示したまま) ・1つのページに複数記設置出来る(移動先は、それぞれ別)

  • Windows - ディスクがありません の表示が出てきます?

    OSはWindowsXP SP2です。ビデオ編集中突然画面に何かのメッセージが出てきて意味が分からなかった為に【OK】押しました。その後再起動でXPを立ち上げると、Windows - ディスクがありません「ドライブにディスクがありません。ディスクをドライブに挿入してください。」というメッセージが出てきて、選択ボタンは【キャンセル】【再実行】【続行】のみです。どのボタンを押してもエラー音のような…キャンセルボタンを連打すると消えるんですが、頻繁に出てきます。BUFFALOの外付けHD、HD-HC250U2とHD-HC300U2を繋いでいますが、ドライブ(H)が(J)になったりファイルが消えて無いなど散々です。この現象はWindowsXPの再インストールした方がいいんでしょうか?説明分かりづらいかも知れませんが、本当に困っていますどなたか教えてください。宜しくお願いします。

  • ダイアログの文字が表示されない!(ことがある・・・)

    JavaScriptのconfirmで「OK/キャンセル」が表示される場面で、メッセージが空白になり、「OK/キャンセル」の文字も出なくる時があります。(何も文字の書かれていないボタンが表示されている状態です) 何かソースに問題があるのか、環境が悪いのか、いろいろ調べて試してみたのですが、再現したりしなかったりで困っています。 何かご存知の方、どんな小さなことでもかまいませんので、お助けください! 環境は:WindowsMe,IE5.5SP2です。 よろしくお願いします。

  • ラジオボタンの未選択アラート/送信ボタンはリンク

    初めまして。 診断サイトのテスト画面を作成しております。 2問×4ページ+結果1ページの構成です。 1ページの中にラジオボタンを使用した4択問題×2問あり、 ページ下部に「次へ」のボタンを配置しています。 その「次へ」ボタンを押す際に、 未選択のラジオボタンがある場合にアラートがあがり、 (「次へ」ボタンは画像) かつ選択済みの場合は次のページへリンクする、 という仕様にしたいのですが、 何から設定したらよいのか迷走してしまっております… <input type="image">に対してリンクを設定してみようと色々やってみたのですがうまくいかず、 参考サイトから引用してきたりもしているのですが、 アラートだけ設定できてもリンクか画像表示ができない、、と あっちをたてればこちらがたたずという状況です。 ちなみにテスト画面なので、 ラジオボタンの数値等は無視してOKです。 【「次へ」ボタンを押すときにページ内未選択のものがある場合アラートがあがる/「次へ」ボタンを押すと次のページに移動する(リンク)】の状態が実現できれば、 書き方等に特にこだわりはありません。 また、javascriptは今回始めて触れているような状況で、 わかりにくかったら申し訳有りません。。 そもそもjavascriptが適切なのかも不明な状態です。 何卒よろしくお願い致します。

  • アラートについて

    PHPでフォームを作っており送信または登録が完了したらアラートで メッセージを出力するいうものをつくりました。 例としてmysqlに登録完了したらアラートを出すという抜粋です。 if (PEAR:: isError($res)) { die($res->getMessage()); } else { echo "<script type='text/javascript'>"; echo "alert('登録完了');"; echo "</script>"; } これで動作は問題ないのですがアラートが表示されOKボタンを クリックしたらheaderlocationで指定のURLに飛ばすということは js側で制御できないものでしょうか? 使用目的としては、データの更新など同一ページで行った場合 アラートが表示されOKボタンをクリックしてもブラウザを更新 しなければデータが反映表示されないためです。 phpでアラートの後にheaderlocationをやるとページ移管は するもののアラートが表示されず困っております。 jsについてはほぼ無知なもので簡単なことなのかもしれないの ですが方法がわかりません。 フォームは複数ありアラートを表示させたい全ての箇所にechoで 出力しているのですが他にもいい方法などアドバイスなどが ありましたら教えて頂けますと非常に幸いです。

  • IE7 SSLのダイアログ表示

    お世話になります。 IE7で、SSLのページに移動した場合、 「セキュリティで保護されたページに接続します」 的な警告ダイアログが表示されると思うのですが、 手違いで「今後このメッセージを表示しない」チェックをして、 OKボタンを押してしまいました。 このダイアログをSSL接続時に表示させたいのですが、 どの設定をいじればいいでしょうか。 自分なりに、ブラウザの設定をリセット等をしてみたものの状況は変わらず困っています。 よろしくお願い致します。

  • HTMLの表示(ブラウザ)

    初心者です。 現在、テキストエディタでホームページを作成しています。 悪戦苦闘中です。 現在... ◆メインページ ◆ボタンページ をそれぞれ作って、Indexページに貼りつけています。 私のPC環境はMac(10.04)で、ブラウザ(サファリ)にも反映されます。 これを別の環境(XP)、ブラウザ(IE)で表示させようとすると、 メインページ、ボタンページはブラウザにも反映されるのですが、Indexページは真っ白になってしまいます。(ソースは反映されています) すべてが反映されない(メインとボタン)のであれば、フォントの問題かな?とも思うのですが... この場合の原因や対応策はありますでしょうか? よろしくお願いします。

    • ベストアンサー
    • CSS

専門家に質問してみよう