- ベストアンサー
JavaScript サブウィンドウを開くときの親ウィンドウ
親ウインドウ画面が、縦に長いときに 下のほうへにスクロールしたまま、 サブウィンドウを開くと 親ウィンドウ画面が 一番上へ戻ってしまいます。 親ウィンドウを下にスクロールしたままにして、 サブウィンドウを開きたいです。 親ウィンドウを下にスクロールしたまま サブウィンドウを開く方法を教えてください。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> なぜ、なるべく「href="javascript~」と書かないほうが良いのですか。 > 参考までに聞きたいです。お時間が空いたらでいいので教えてください。 まぁ一番の理由は、W3Cのアクセシビリティ・ガイドラインが書くなと言っているので。 http://www.w3.org/TR/WCAG10-HTML-TECHS/#scripts-gt scriptが動かない環境の場合、完全にデッドリンクになってしまいます。 <a href="sub_page.html" onclick="window.open('sub_page.html',null);return false;">ウィンドウを開く</a> と書けば、scriptが動かない場合は通常のリンクとして働くので、より多くの人に見られるようになります。 さらに、「href="javascript~」と書いた場合、ほとんどのブラウザはリンクテキストのクリックを「ページジャンプ」と見なすので、表示されているページがリセット(表示または動作中止)されます。にも関わらず、そのうえ場合によってはジャンプもしない。 ためしに、GIFアニメーションなどを表示したページに「href="javascript~」を書いてクリックしてみてください。アニメーションが止まってしまいます。 (環境によりますが) なお、これはウィンドウを開くだけでなく他のスクリプトも同様です。 たった今達成されたイシンバエワの世界新とは違って、ジャンプさせないほうがいいですね。
その他の回答 (2)
- taseki
- ベストアンサー率66% (155/233)
推測ですが、 <a href="#" onclick="window.open('sub_page.html',null)">ウィンドウを開く</a> のように書いていませんか? もしそうなら、以下のように変えてみてください。 <a href="sub_page.html" onclick="window.open('sub_page.html',null);return false;">ウィンドウを開く</a> また、なるべく「href="javascript~」とは書かないほうが良いですよ…。
補足
ありがとうございます!問題解決しました! すごく助かりました。 なぜ、なるべく「href="javascript~」と書かないほうが良いのですか。参考までに聞きたいです。お時間が空いたらでいいので教えてください。
多分、a herf="" にアクションを仕込んでいませんか? onClickで指定すれば、ご希望の操作になると思うのですが...。 <a href="javascript:void(0);" onClick="window.open()"></a> void(0); が、たしか何もしないってことだったと思います。 手元に辞書が無いので確認してませんが(^^;
お礼
すごく参考になりました!問題解決になりました。ありがとうございました。
お礼
丁寧なご返答ありがとうございました。大変勉強になりました。感謝です。