window.openで開いたウィンドウを閉じさせないためには?

[上に] [前に] [次に]
nami [E-Mail] 1999/05/14(金) 18:06:14
済みません、ひとつ前の書込で、内容を書かずに書き込んでしまいました。

window.openで開いたウィンドウをタイトルバーの「×」ボタンで閉じさせない様にしたいのですが、どなたかご存知の方はいませんか?

open時のスタイルで、メニューバーやツールバーは消しているのですが
右上のコントロールボックスだけは消せません。

onbeforeUnLoadで、閉じる前のイベントは拾えたのですが
キャンセル不可のイベントなので、拾ったところで為す術もないです。

「×」ボタンの操作をキャンセルさせる方法、又は×ボタンを無効に
する方法は無いものでしょうか。。。





Mugi [E-Mail] [HomePage] 1999/05/14(金) 18:53:30
IEなら、onbeforeunloadに対して
return "ページ移動警告ダイアログのメッセージ"
のようになにか文字を指定してreturnを使うと
ページ移動(ウィンドウを閉じる動作も含む)の
確認ダイアログを表示してくれます。
ユーザーが、キャンセルを選べばページ移動は
実行されません。

匿名希望 1999/05/15(土) 03:27:40
単純に閉じないで下さい とか表記すれば・・ダメですか?
(そういう問題ではないのか)
見る立場からいうと、勝手に外に飛び出してくるウィンドウって
閉じたくなりません?

匿名希望 1999/05/17(月) 11:05:59
私も閉じないウィンドウというのは問題を感じます。
狭い画面でウィンドウだらけになると辛いですし・・・

nami 1999/05/19(水) 13:11:27
[[解決]]
Mugiさん、お返事ありがとうございます。
試してみたのですが、onbeforeunloadに対して 値を返した時に
出るダイアログは何だか判りづらいものなので、ユーザを混乱させて
しまいそうです。
「閉じてもよいですか?」のような問い合わせが出来ると良いの
ですが,..。
その後もいろいろ調べたのですが明示的にキャンセルしてしまう
方法というのはない様ですね。

匿名希望(x2)さん、window.openはさまざまな使い道があります。
勝手に開かれる広告ウィンドウの様なものは確かに不快かも
しれませんが、ユーザのクリックによってユーザが開けと指示した
時に window.openでウィンドウを開いてあげた場合、誤操作で
閉じることを抑制することは必要と思います。

具体例)掲示板で記事を書くためのウィンドウを子ウィンドウで開く。
    記事が書きかけなのに、「×」ボタンが押された。
     ↓
    「書きかけの記事があります。閉じてもよいですか?」

普通のアプリで編集中のものがあるのに「×」が押されると
確認ダイアログがあがるのと、同じレベルのことがしたいだけなの
ですが..、まだ HTMLドキュメントレベルでは無理の様ですね。
残念です。

匿名希望 1999/05/19(水) 20:13:42
うーんとですね。
>掲示板で記事を書くためのウィンドウを子ウィンドウで開く。
>記事が書きかけなのに、「×」ボタンが押された。
>    ↓
>  「書きかけの記事があります。閉じてもよいですか?」
だったらはじめからフレームで分割しておいて、片方を
書き込みフォームにするほうがスマートだと思いますね。
JavaScriptが有効なブラウザなら、フレームも当然サポートしている
はずですから(笑)
もちろん、window.openが悪だという事ではなくて、
「ユーザのクリックによってユーザが開けと指示した時に
window.openでウィンドウを開いてあげる」
というのは多いにアリですね。
でもこの場合は「自分で開けたなら自分で閉める」のが
正しいインタフェースのあり方だと思います。(うーん蛇足だなぁ)

[上に] [前に] [次に]