システム開発ブログ/ ソフトウエア開発部 Yahoo!ブックマークに登録 Google ブックマーク はてなブックマーク Livedoorクリップ

システム開発ブログ

Twitterでilovex_officialをフォローしてください

最近の記事

カテゴリー

部署

月別アーカイブ

以前の部署別ブログ

親画面のスクロール位置を保持する

松本
松本 (2010年1月22日 20:16)
ソフトウエア開発部

HTMLの<a>タグをクリックし、ポップアップで子画面を表示する場合に、
親画面のスクロール位置を保持するには、
<a>タグの記述を以下のようにすると実現できます。

【1】<a href="#" onClick="window.open(......); return false;"></a>

【2】<a href="javascript:void(0);" onClick="window.open(......);"></a>

【3】<a href="javascript:void(0);" onClick="window.open(......); return false;"></a>


私はよく、リンクボタン押下時に、
onClickイベントで画面遷移やウィンドウを立ち上げたいような場合、
href属性に[#]を設定していました。

ところが、href="#"だけでは、javascriptのwindow.scroll等を設定しても、
親画面のスクロール位置は保持されず、画面のTopに戻ってしまいます。

失敗例:<a href="#" onclick="window.open(......);"></a>

これを回避するためには、onClickイベントの最後に、
[return false;]を追加すれば良く、
親画面のスクロール位置を保持することができます【1】。

また、href="#"を設定したい場合には、
href="javascript:void(0);"と書くこともできます。

href="javascript:void(0);"を設定した場合は、
onClickに[return false;]を設定しなくても、
親スクロールの位置を保持することができました【2】。

ただし、href="javascript:void(0);"を指定した場合、クロスブラウザの観点上、
onClickに[return false;]を設定したほうが、動作が安定するようなので、
onClickに[return false;]も設定しておいたほうが、安全だと思います【3】。

この3つの書き方の中では、
href属性にjavascriptを設定するのは、W3C非推奨のようなので、
【1】のように設定するのが一番良く、
[javascript:void(0)]を使うのであれば、【3】にするのが良いでしょう。

※主な動作確認にはIE6を使用しました。
 【1】、【3】については、IE6、IE7、IE8、Fx3.5で確認済みです。

お問い合せ・情報はこちらの電話番号におかけください:03-3232-2525 お問合せ・資料請求はこちらをクリックしてください
ページのトップ
システム開発・一括受託開発。見積依頼受付中

システム開発専用サイト

システム開発の流れ・手順、実績など。アイロベックスのシステム開発を紹介。

VB .NETを主言語としたWebアプリケーションの開発

要件分析から保守まで、お客様の現場での問題解決だけでなく、IT経営の援護者としてトータルソリューションサービスを提供しています。

MovableType を使ったウェブサイト構築

魅力あるウェブサイトデザイン、構成はもとよりMovableTypeを使用したウェブサイトの作成、JAVA、CGIによる注文フォームの作成等、ビジネスを強力にサポートします。

フォルダーアクセス権限確認ツール『AD-Folder』

Windowsフォルダーアクセス権限確認ツール

フォルダーアクセス権限を一目で確認。使用版を無償でご利用いただけます。

スクール運営を応援する講座情報管理システム『CMS+AD for School』

Webとリアルをつなぐコンテンツマネージメントシステム

Webサイト・モバイルサイト・チラシ(PDF)・カタログ(InDesign)を、簡単かつ正確に作成できます。

「システム開発ブログ」の更新情報をTwitterで。

Twitter公式アカウントに認定されています

「システム開発ブログ」の更新情報をTwitterで。ぜひ、フォローをお願いします。