前から思ってたけど・・・1

2006年08月16日 | CGI/PHP
駒大苫小牧、すげぇな・・・でも、ミラクルではあるが、これぞ駒苫の勝ち方って感じだから、ある意味いつも通り?

さて、今日はJavaScriptに関して前から思ってたけど・・・ってお話。JavaScriptで別ウィンドウを開くには、

window.open('aaa.html', 'new', '・・・

なんてやるわけですが、これを繰り返し呼んだ場合は、すでに開いてある(この場合だと「new」って名付けられたウィンドウ)に表示されるわけです。ここまではどのブラウザでも同じはずだと思いますが、ここからがちょいと違う。
Macだと、ウィンドウに表示された後そのウィンドウが必ず前面に出てきます。最初に開く時も、すでに開いたものに表示される時もです。これが、Windows(ie)だとすでに開いたものに表示する時は前面に出てこないので「あれ?」ってことになります。クリックしても何も起きないので変だなぁと思っていたら、背後にあるウィンドウが密かに更新されてるってわけです。何でこうなってるんでしょうね・・・今まさに表示させたいものを前面に持ってきたくないという場面が想像つかないんですが・・・。

もちろんこれは、

var win = window.open('aaa.html', 'new', '・・・
win.focus();

などとして意図的に前面に持ってきてやることで解決可能です。でも・・・・

<a href="aaa.html" target="new">

などとして常に同じウィンドウに表示したい時はどうしたらいいんでしょうね・・・この場合もJavaScriptと同じでWindowsだと2度目からは前面に出てきません。しかたなく同じウィンドウは諦めて、target="_blank"にしたりしてますが、常に前面に来るようにしておいてくれればそれで済むのに・・・などといつも思ってます。えっ?常にwindow.openを使えって?う~ん、何だかなぁ・・・・。

最新の画像もっと見る

コメントを投稿