開いたウィンドウを閉じるには

[上に] [前に] [次に]
ぴーぽー [E-Mail] 1999/07/27(火) 17:09:36
皆さんこんにちは。早速だけどお願いします。
あるウィンドウをJavaScript以外でひらいて
(A herfやFORMのアクション等)
そのウィンドウをJSのwindow.closeでとじると、
アラートボックスでY/Nを聞かれてしまいます。
これを聞かずに閉じるようにしたいのですが?
またwindow.close以外でウィンドウを
閉じる方法ありますか?
もう一つよろしいでしょうか
A herfでJS関数を呼ぶ事は可能でしょうか?
よろしくお願いします。

ウンジャマラミー 1999/07/27(火) 18:00:44
>そのウィンドウをJSのwindow.closeでとじると
>アラートボックスでY/Nを聞かれてしまいます
え?、window.closeでこんな風になるの?
window.confirm()ならわかるけど。
ソース見ないと分からないと思いますよ。

>A herfでJS関数を呼ぶ事は可能でしょうか
<a href="JavaScript:func()">ほにゃらら</a>
です。

文月 1999/07/27(火) 18:14:44
たしかに
<form>
<input type=button value="画面を閉じる" onClick='mywin =window.close()'>
</form>
んなことすれば、閉じることできるけど、「閉じますか?」って聞かれるのもたしか。
でも、これってほんとに、消せるのかな?
でも、開いたときには、JavaScript使わないで、閉じるときだけ使うって、どういう状況かしら?

>window.close以外でウィンドウを閉じる方法ありますか?
# ×ボタンを押す。。。(-_-;;;;

><a href="JavaScript:func()">ほにゃらら</a>
お、こんなことできるんですね。。。勉強になった。

みんこ 1999/07/28(水) 08:58:39
昔こういう話ありましたな。
../199804/98040004.htm
../199904/99040043.htm
../199904/99040048.htm
おまけ
../199907/99070238.htm

Nobu3 1999/07/28(水) 09:08:44
セキュリティじゃないんでしょうか?
スクリプトで閉じるなら、スクリプトで開いたほうが良いかも。

ぴーぽー [E-Mail] 1999/07/28(水) 10:25:58
ウンジャマラミーさん、文月さん、みんこさん、Nobu3さん
レスありがとうございます。
過去にもおなじような質問があったんですね。
私なりに、調べたのですがJSの機能でやはり、
window.open()で開いたウインドウ以外は、window.close()で
閉じるのはよしとしないみたいです。
ユーザーのブラウザを故意に終了させようとする
悪意のスクリプトから守るため出そうです。
でも、ここをまげたいのですが・・・。
ウンジャマラミさんの
><a href="JavaScript:func()">ほにゃらら</a>
でwindow.openを使う方向でやってみようと思います。

でもwindow.close()いがいで、閉じる方法ってあります?
いろいろやってみようと思います。
結果はまた報告いたします。
みなさん、ありがとうございます。

ぴーぽー 1999/07/28(水) 13:01:01
こんにちは、
<A href>タグでJS関数を呼ぶ方法なんですが、
うまく動きません。

function Wopen(url){
    var wsize=
"menubar=no,toolbar=no,scrollbars=yes,resizable=yes,width=500,height=300";
    var NEW =
   window.open("./unyou-bkup1.cgi","Newwindow",wsize);
    NEW.opener = self;
}

<TD><A HREF="JavaScript:Wopen(./unyou-bkup1.cgi)
"TARGET="_blank">・アクセスログ確認(日次A)</A>
</TD>

こんな風にかいてます。
よろしくお願いします。

ウンジャマラミー 1999/07/28(水) 13:42:12
><A href>タグでJS関数を呼ぶ方法なんですが、
>うまく動きません。
ということなので、
「<A href>タグでJS関数を呼ぶ」部分をチェックした結果...
>window.open("./unyou-bkup1.cgi","Newwindow",wsize);
の"./unyou-bkup1.cgi"は、Wopen()の引数"url"の間違いでは?
><TD><A HREF="JavaScript:Wopen(./unyou-bkup1.cgi)
Wopen('./unyou-bkup1.cgi')のようにシングルクォートで囲ってください。

その他の部分まではチェックしてませんので、とりあえず修正してみて下さい。

Tmb 1999/07/28(水) 14:10:28
ウンジャマラミーさんに追加して・・・

<A>側のTARGET指定は除きましょう。気持は判りますが,TARGETを2重に指定する
ことになりますし,そもそも"Newwindow"という名前のウインドウを指定すること
(そして,それが存在しない場合にはその名前のウインドウを新たに作成すること)と,
新しいウインドウ(_blank)を作成することの意味は違います。
#もしかして余分なウインドウが開いてませんか?

それからurlやNEWなどは変数名として使わない方がよいでしょう。JavaScriptには,それぞれ
URL, newという予約語があります。確かにJavaScriptは基本的に大文字小文字の区別をつけますが,
こういった些細な仕様というのはあまり信用しない方がよいと思いますので,予め無難な変数名にすべき
でしょう。

それとopenerは書き換え可能なプロパティでしょうか? その働きを考えると不可能であっても
不思議はないのですが。

たこすけ 1999/07/28(水) 14:21:15
さらに追加して・・・

・TARGET属性付けると、そこの関数を呼んじゃうよん。
・ラウンジでの丸付き数字の使用は禁止だよ。

あ、質問とは関係なかったか・・・

みんこ 1999/07/28(水) 14:51:18
もいっちょおまけに...
><TD><A HREF="JavaScript:Wopen(./unyou-bkup1.cgi)"TARGET="_blank">

hrefとtargetの間には一つ以上の半角スペースかタブを入れましょう。
ってこの場合target自体入れたらまずいですが。

○付数字は機種依存文字です。私のようなMacでは見られますが
winだと化けてますよ。
参考↓
http://www.ed.kanazawa-u.ac.jp/~iwasaki/Tips/MachDepend.html
自分のOSで読める文字は違うOSでは読めない文字。
反対に化けている文字は違うOSが読める文字。

たこすけ 1999/07/28(水) 15:07:30
> winだと化けてますよ。
あ、いや、Winでも見られますよ。
FreeBSDとかLinuxとかだと駄目だろうけど。

Tmb 1999/07/28(水) 15:15:36
>・TARGET属性付けると、そこの関数を呼んじゃうよん。
おっと,そうでしたか。失礼しました m(_ _)m 勉強になります。

>winだと化けてますよ。
元のはwinの丸付き数字みたいですね。うちのmacで見ると(月)みたいになってます。
#もちろんmacにも丸付き数字はあって,それも当然,機種依存文字ですが。

ぴーぽー 1999/07/28(水) 18:10:45
みなさん、ありがとうございます。
変数名等確かにそのとおりです。注意します。
いろいろやってなんとかJS関数は動きました。
ウィンドウもオープンされます。
しかし、どんなURLを指定しても、NotFoundに
なってしまいます。
HTML
<TD><A HREF="JavaScript:Wopen('./unyou-bkup1.cgi')">
  xxx</TD>
JS
function Wopen(add){
  alert(add);
  window.open('add','AAA');
}
そこでこんな形にシンプルにしたのですが、これでもだめです。
URLの指定は間違っておりません。
このCGI(呼び元HTMLもCGIです。)と
同じ場所においてあるので。
addにもちゃんと値が入っております。
ブラウザはIE5.0を使用してます。

Tmb 1999/07/28(水) 18:44:18
> window.open('add','AAA');
window.open(add,'AAA');
ですね。

B-Cus 1999/07/28(水) 19:35:52
本題とは関係ないですが…
> winだと化けてますよ。
分かってて書かれてるとは思いますが、一応補足。そこらへんの機種依存文字は
JIS X 0208 の未定義領域を Microsoft とか Apple が勝手に使っているだけ
なので、一般的には化けることはなく、何も表示されないだけです。
# もちろん(1)と(月)などの問題はありますが。

> FreeBSDとかLinuxとかだと駄目だろうけど。
結局Xのフォントの未定義領域に機種依存文字を突っ込んでやればいいので、
そこらへんを定義したフォントと差し替えれば表示できます。

ちなみに、自宅のFreeBSDマシンでは、機種依存文字は白黒反転して
表示されるようになってます。
# でも今使ってるマシンからは読めないから、機種依存文字は
# 使わないでね。

ぴーぽー 1999/07/29(木) 16:01:34
[[解決]]
みなさん、大変ありがとうございました。
無事、<A HERF>タグでJS関数を呼び出す事ができました。
これにより、window.closeでもY/Nなしで
閉じる事ができました。

丸付き数字、以後気をつけます。

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