dポイントプレゼントキャンペーン実施中!

アンカータグ(<a>)のname属性又はid属性を利用して別ページの指定箇所へジャンプさせているのですが、通常、この方法を利用すると“指定箇所”は、“今見ている画面の最上部”に表示されます。

これを“今見ている画面の【中央】”近辺に毎回表示することは可能でしょうか?

javascriptなどでできるのかなとも思いましたが、自力で作成できるほどの知識がなく、
何か方法があればお教えいただきたいと思いました。

ご存知の方がおられましたら、何かアドバイスをいただければ嬉しいです。
どうぞよろしくお願いいたします。

A 回答 (1件)

こんにちは。



意図したいことがいまいち分からないのですが、表示させたい部分の先頭のタグに IDを入れてそこにリンクすればいいでしょう。
    • good
    • 0
この回答へのお礼

ご回答を付けていただきありがとうございます。

なかなか文章力が無く、上手く表現できないのですが、
既にid属性でアンカーを飛ばす?(リンク)しているのですが、
そのid属性で指定した箇所が表示される際、
通常はウィンドウのページトップにその箇所が現れます。
(本来、その箇所を見るためのアンカーリンクなので、ページのトップに来たほうが見る人は分かりやすいので当たり前の仕様なのかもしれませんが…)

しかし、現在私はcolorboxというjavascriptを使ってiframeのポップアップウィンドウにそのアンカーリンク箇所を表示させているのですが、
その場合、リンクをクリックすると指定箇所をページのトップに表示しようとブラウザが?するので、
colorboxごとページのトップに上がってしまい(=即ち、親ウィンドウが勝手に下にスクロールされる)、
ページの体裁としてなんだかヘンな印象を持つのです。

colorboxは親ウィンドウの中央に表示されるようにしており、
実現したい形は

“colorboxの位置は固定され、
 そのbox(=iframe)“内”のトップにアンカーリンク指定箇所を表示させる”

ということです。


そこで、アンカーリンク先の指定箇所を常にページのトップに表示させるのではなく、
できれば中央付近に表示されるように操作すれば、coloboxごと上に引っ張られることはないかと思った次第です。

もう一つの方法として、親ウインドウを何が何でもいつも座標(0,0)で固定してしまえばいいかなとも思ったのですが、coolorboxの絡みか何かでjavascriptを用いても一向に現象が変化(私にとっては改善)しません。
ただ、javascriptを特に勉強したり研究したりしているわけではなく、
サンプル等を見つけてそれを参考に勘?でやってみたりしているので、
構文などが間違っている可能性は非常に高いですが…。

因みに、
window.onload = function(){
document.getElementsByClassName("example7").onclick = function(){
window.moveTo(0,0);
}
}

<a href="#" onClick="window.open(......); return false;"></a>
などをしてみましたがダメでした。

リンクは
<a class='example7' href="別ページ#f0215">Outside Webpage (Iframe)</a>
のような形にしていて、colorboxはclassを指定することで動くようになっています。

これはjavascriptのカテゴリになる気がしますが、
数日間この問題と格闘しており、事情でこれ以上時間をかけられないので、
また時間ができたときにじっくり考えてみたいと思います。


以上、お礼が大変長くなり恐縮ですが、
ひとまず状況のご説明も付け加えさせていただきました。

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

お礼日時:2010/02/18 07:55

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