• 締切済み

onunLoadを指定ページでだけ除外する方法

お世話になります。 自分のブログを閉じた際に、javascriptのonunloadを使って 別のウィンドウが開くようにしたのですが、 閉じた時以外にも、ブログ内のリンクをクリックして 別のページに飛んだ際にまで窓が開いてしまいます。 ブログ内のリンクを踏んだ際は、スクリプトが作動しないようにするには、 どうすればよいでしょうか? (ちなみに当方javascriptは素人です;) ちなみに自分の使ったのは、 <SCRIPT LANGUAGE=JavaScript TYPE=text/javascript> var Path = 1; function OpenWindow(url) { if(Path == 1){ OpenWin=window.open(url,"PopUp","toolbar=0,location=0,status=0,menubar=0,scrollbars=0,resizable=0,wi dth=1150,height=780"); OpenWin.blur(); window.focus(); } } </SCRIPT> And in the body tag: <body onunload="OpenWindow('http://www.新たに開くページ.html')"> よろしくお願い致します。

みんなの回答

  • tracer
  • ベストアンサー率41% (255/621)
回答No.2

やろうと思えばできますがやるべきではありません。 逆に質問なんですが、なぜ強制的にウィンドウを開く必要があるのですか? なぜユーザーに選択の余地を与えられないのですか? 本当に素人であれば、それはやってはいけないことと認識して問題ありませんよ。

noname#158634
noname#158634
回答No.1

初心者ということなので分かりやすくお伝えします。 そんなワンクリ詐欺サイトみたいなことをするのはやめろ。 WebにはWebのマナーというのが一応あって、サイトを閉じたりほかのサイトへ移動したりしたときに勝手に新しいウィンドウが開くなんてのは特に最悪な部類の迷惑行為です。 ちなみに、Javascriptの知識を付けてもらう分には良いことではあるので一応質問には答えておきます。 onunloadというのは、あなたの言うとおり >閉じた時以外にも、ブログ内のリンクをクリックして >別のページに飛んだ際にまで プログラムを実行するのが正しい動作です。そして、ブラウザーが閉じられたか画面遷移なのかは基本的に判断法はありません。 つまり、「どうすればよいでしょうか?」には「無理。諦めろ。」が答えになります。

関連するQ&A