CGI-BBS > JAVA/JavaScript > JavaScript > onUnloadでlocation.hrefができない。


カレッヂ
カレッヂ


質問者 初心者  投稿日 3/26(水) 13:08:30
教えてください。

<SCRIPT LANGUAGE="JavaScript">
              <!--
              function link() {
                  if (confirm('この先へも進みますか?')) {
                      parent.location = '**URL.1**';
                  }
                  else {
                      parent.location = '**URL.2**';
                  }
              }
              //-->
              </SCRIPT>


<body onUnload="link()">

という様に返事によって飛ばし先を変えたいのですが、

Mac ネスケでは出来たのですが、Mac IEではうまく出来ません。

parent.locationのところをいろいろ変えてはみたのですがまったくダメでした。
何か良い方法があれば教えてください。

プロバイダ参照:
サーバのOS:MACサーバ
パソコンのOS:Mac9
エディタ:
FTPソフト:
サーバ移転:していない
改造:していない
CGI習熟度:middle

回答者 cen_picture21  [削除]  投稿日 4/15(火) 17:19:10
次に何を表示したいかで
違いますけど

parent.location = '**URL.1**'
を
window.open("**URL.1**")
ではだめでしょうか?
質問者 初心者  [削除]  投稿日 4/15(火) 20:26:50
お回答ありがとうございます。
どうしても同じウインドで処理をしたかったのですが、いろいろ試してはみましたがやはり無理な様でした。
また何かいい方法でもあれば教えてください。気長に待ちたいと思います。
回答者 cen_picture21  [削除]  投稿日 4/16(水) 01:25:07
<A HREF="***"></A>のリンクをクリックした後
confirmで確認してリンク先を振り分けるのであれば
parent.locationでは確かに振り分けれず***に移動してしまいますが
location.hrefかlocationならいけます。
しかし、閉じようとしている場合はだめです。
いろいろやっているけどのいろいろを
教えてもらうと効率よくなると思いますが
質問者 初心者  [削除]  投稿日 4/16(水) 22:15:41
たびたび申し訳ありません。
これにこだわったいるのは、例えば今開いているページをリンクした「閉じるボタン」を押さずアクセス先を変えた場合やその窓を閉じた場合に、その処理を新たに窓を開かず同じ窓で実行させたいんです。かなり強制的ですが。

いろいろと書きましたが、初心者なのでこの記述(location.href・parent.location)を思いつきみたいな場当たり的にやったので覚えてないんです^^;
当然これも試してみましたが→location.href・parent.location
どちらかは忘れましたがウイン系のネスケでは実行されると同時にブラウザがクラッシュしました。Mac IEではまったく反応はナシでした。それで現在はご返事にもいただいた「window.open("**URL.1**")」でとりあえず対処しています。これであればどの環境でも問題ない?様ですので。申し訳ないです、初心者なものでどう説明したらいいのかわからず言葉だけでは難しいですよね。

簡単に言えば、最初の質問に記述した命令がどのブラウザでも実行される方法があればと思っています。

返信(回答)する

 


Web裏技