• 締切済み

フラグメント識別子によるジャンプについて

こんにちは。いつもお世話になります。 Safari、OmniWeb、シイラなどのAppleWebKitブラウザでは、 フラグメント識別子(id、name)で特定部分にジャンプさせたい場合、 同じページ内はできますが、別ページからのジャンプができません。 IE, Firefox, Opera8ではジャンプできます。 例:サイトマップに、<a href="./file/abc.html#faq5">雑学FAQ:その5</a> として、abc.htmlに、<h2 id="faq5">雑学FAQ:その5</h2>.....とした場合、 AppleWebKitブラウザでは、上手くその場所にジャンプしません。 何か良い方法はありませんか? 教えて下さい。 よろしくお願いします。

みんなの回答

  • THX1138
  • ベストアンサー率51% (108/208)
回答No.2

PHP スクリプトにリクエストを出した際のレスポンスヘッダ Content-Type はどうなっていますか。妙なモノになってませんかね。 > すみません。ページの拡張子が .htm、.htmlでは、大丈夫みたいです。 であれば、どのリソースであっても Content-Type: text/html になっていれば正しく動作すると思います。

waterclock
質問者

お礼

text/html です。 他のphpサイトで同じ事をやってみたら、動作したことを確認しました。 と云う事は、こちらのphpコードに問題があるのかも知れません。 phpによるCSS振り分けなどの処理を頭でやってたり、CSS自体もphpで、 動的に動作させてますので、これらのどこかに問題があるのでしょう。 さて、こつこつと調べてゆきます。 色々とありがとうございました。

  • THX1138
  • ベストアンサー率51% (108/208)
回答No.1

Mac の環境がないんで試していませんが、古い方法を試してみてはどうでしょうか。 a 要素の name 属性による指定を使います。 <h2><a name="faq5">雑学FAQ:その5</a></h2>..... この属性は、XHTML 1.1 で廃止となっていますが、まだまだ広く使われているのが実情です。

waterclock
質問者

お礼

早速の回答ありがとうございます。 両方とも試しましたが、駄目でした。 例えば、直接URLで、http://www.zzzzz.com/file/abc.html#faq5と 打ち込んだ場合でも駄目でした。 たぶん、ブラウザの仕様だと思うのですが、 こうなってくると、javascriptでも無理でしょうか?

waterclock
質問者

補足

すみません。ページの拡張子が .htm、.htmlでは、大丈夫みたいです。 実際のページの拡張子は、.phpになっています。 ですから、SafariなどのKHTMLブラウザでは、拡張子が.phpの場合は、 ハイパーリンクできないのです。となると、phpに問題がありそうですね。 何か、良い方法は無いでしょうか。

関連するQ&A