プロが教える店舗&オフィスのセキュリティ対策術

親ページがあり、開く子ページをxxx.htmlとyyy.htmlとします。

<a href="javascript:void(0)" onClick="window.open('xxx.html', 'newwin','width=520,height=250')">
xxxページが開きます</a>


これでクリックするとxxx.htmlが開くには開くんですが、親ページに戻ると、(親ページをアクティブにする)xxxページは親ページの後ろに隠れてしまいました。そこでもう一度リンクをクリックしても、xxx.htmlはアクティブになりません。親ページをずらさないと見えないのです。

次に、


<a href="javascript:void(0)" onClick="window.open('yyy.html', 'newwin','width=520,height=250')">
yyyページが開きます</a>

クリックすると、yyy.htmlが開きません。
・・・と思ってよく見たら、親ページの後ろに隠れていた、先ほど開いたxxxページがyyyページに切り替わっていました。


そこで質問なんですが、

1.xxxとyyyを別々のウィンドウで開きたい。

2.一度開いたページでも、リンクをクリックしたら隠れていたページがもう一度表示されるようにしたい。

jsでなくとも、問題がなければ方法は問いません。

博識な方、お返事どうぞよろしくお願い致します。

A 回答 (4件)

(メ・ん・)?


何がしたいのでしょう?

一度普通にリンクを貼ってみたらいかがですか?

小窓で開きたいのでしょうか?

そこんトコロをはっきりしてください。

この回答への補足

説明足らずですみません。おっしゃる通りwidthとheightを指定した子窓で開きたいのです。

普通に貼ったら普通に開いちゃうじゃないですか~泣

補足日時:2011/12/08 14:40
    • good
    • 0

https://www.google.com/search?q=%E5%BC%B7%E5%88% …

何も理解しないで書くからそうなるんだよ。

1.
<a href="javascript:void(0)" onClick="window.open('xxx.html', 'newwin','width=520,height=250')">
xxxページが開きます</a>
<a href="javascript:void(0)" onClick="window.open('yyy.html', 'newwin','width=520,height=250')">
yyyページが開きます</a>
ウィンドウの名前が同じだからそりゃ同じウィンドウで開くわ。

2.
ブラウザの設定だから強制するのは無理。


https://www.google.com/search?q=%E5%BC%B7%E5%88% …

参考URL:https://www.google.com/search?q=%E5%BC%B7%E5%88% …

この回答への補足

すみません、知識が足りないもので・・・
2の答えの強制別窓って、ターゲットブランクのことでしょうか?


1の同じwindowを別のものに変えるには、どういじればよいのでしょうか?

どうぞよろしくお願い致します。

補足日時:2011/12/08 21:21
    • good
    • 0

>ターゲットブランクのことでしょうか?


そんな語はないから知らん。
強制別窓っていうのはリンクをクリックしたときに「閲覧者の意思を無視して勝手に」新しウィンドウを開くこと。「Webの常識」としてやってはいけないということになっている。
つーかGoogleを見せたかったんじゃなくてあなたがやろうとしていることがどれだけNGか知ってほしかったんだけど。
まあいいや。説明します。
一般に、「単に<a>タグをつけただけのリンク」はクリック時に同じウィンドウまたはタブで開きます。これは大丈夫ですよね?
つまり、何も意識しない状態では、閲覧者は普通「同じウィンドウで開く」ことを期待します。強制別窓はこれを裏切る行為です。
また、「単に<a>タグをつけただけのリンク」はいくつかの方法で別窓または別タブで開けますが、その逆はできません。実はこれが一番の理由。
繰り返しますよ。「無知なうちに強制別窓なんかするな」

>1の同じwindowを別のものに変えるには、どういじればよいのでしょうか?
「ウィンドウの名前が同じだからそりゃ同じウィンドウで開くわ」と明確に教えましたが無視ですか?
それとも「<a href="javascript:void(0)" onClick="window.open('xxx.html', 'newwin','width=520,height=250')">xxxページが開きます</a>」の記述がどういう意味を持っているか本当は分かっていないだけですか?


初心者の知識が足りないことなんて当たり前なので別に責めやしないから言い訳など不要。
教えられたときにすぐに覚えるかどうかが問題です。
もう一度だけ繰り返します。
「よくわからないなら強制別窓はやめろ」

この回答への補足

別窓で開くことがマナー違反ということは知りませんでした!

親窓を見ながら開いた子窓と比較して・・・っていうのをやりたかったんですが・・・
同窓で開くことにします>_<

教えて頂きありがとうございます!

最後に良ければ回答ください。

1の質問なんですが、
>「ウィンドウの名前が同じだからそりゃ同じウィンドウで開くわ」と明確に教えましたが無視ですか?

ウインドウの名前を変えることで別々に開くことはできないのでしょうか?
「ウインドウの名前を変えること」自体が不可能なんでしょうか?

2の質問ですが、
>また、「単に<a>タグをつけただけのリンク」はいくつかの方法で別窓または別タブで開けますが、その逆はできません。実はこれが一番の理由。

その逆、というのがよくわかりません。
具体的に教えていただけないでしょうか?

何度も質問に回答して頂いて、ありがとうございます^▽^*

補足日時:2011/12/09 09:21
    • good
    • 0

>ウインドウの名前を変えることで別々に開くことはできないのでしょうか?


>「ウインドウの名前を変えること」自体が不可能なんでしょうか?
「ウィンドウの名前」が分かってないっていうことですよね?
onClick="window.open('yyy.html', 'newwin','width=520,height=250')
Javascript自体の説明は省きます。
()の中身の最初が開くファイルまたはURL、そして2番目がそのウィンドウに付ける名前。ここでは「newwin」。
これが同じだから、あとから開くファイルも同じウィンドウに開くわけです。

2の質問ですが、
>また、「単に<a>タグをつけただけのリンク」はいくつかの方法で別窓または別タブで開けますが、その逆はできません。実はこれが一番の理由。

>その逆、というのがよくわかりません。
>具体的に教えていただけないでしょうか?
『「単に<a>タグをつけただけのリンク」はいくつかの方法で別窓または別タブで開けます』の逆。
つまり、今回のようなJavascriptでの別窓や、<a href="xxx" target="yyy">のようなリンクは強制的に新しいウィンドウを開くリンクは、普通にやると同じウィンドウ内で開けません。つまり「同じウィンドウまたはタブで開きたい(もしくは開くと思ってクリックする)人」にとって不便なわけです。
※前回「できません」と断言してしまいましたが、全く不可能なわけではありません。語弊があったことをお詫びします。
これはいわゆる「ユーザビリティ」の問題です。
同じウィンドウで開くようになっているほうが、「同じウィンドウで開くと思っている人」「新しいウィンドウで開こうとする人」の両方にとってより良いということです。


長々いろんなことを言いましたが、正直なところ、こういうことを分かったうえで、閲覧者に配慮して使うなら(単に「別窓で開きます」と近くに書いておくだけでもだいぶ違う)、極端に悪いことというわけではありません。
質問者さんの場合、よくわからない状態でどこかのまねっこでやろうとしているようだったので、強制別窓自体だけでなくいろいろ弊害もありそうだと心配になり老婆心ながらお説教させてもらいました。
    • good
    • 0
この回答へのお礼

1も2もやっと理解できました。
丁寧な説明をどうもありがとうございます。


>質問者さんの場合、よくわからない状態でどこかのまねっこでやろうとしているようだったので・・・

本当にそのとおりでした。


今回質問以外にも学ばせていただいたことがあってよかったです。

ありがとうございました。

お礼日時:2011/12/11 19:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!