- 締切済み
フラグメント識別子によるジャンプについて
こんにちは。いつもお世話になります。 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ブラウザでは、上手くその場所にジャンプしません。 何か良い方法はありませんか? 教えて下さい。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- THX1138
- ベストアンサー率51% (108/208)
PHP スクリプトにリクエストを出した際のレスポンスヘッダ Content-Type はどうなっていますか。妙なモノになってませんかね。 > すみません。ページの拡張子が .htm、.htmlでは、大丈夫みたいです。 であれば、どのリソースであっても Content-Type: text/html になっていれば正しく動作すると思います。
- THX1138
- ベストアンサー率51% (108/208)
Mac の環境がないんで試していませんが、古い方法を試してみてはどうでしょうか。 a 要素の name 属性による指定を使います。 <h2><a name="faq5">雑学FAQ:その5</a></h2>..... この属性は、XHTML 1.1 で廃止となっていますが、まだまだ広く使われているのが実情です。
お礼
早速の回答ありがとうございます。 両方とも試しましたが、駄目でした。 例えば、直接URLで、http://www.zzzzz.com/file/abc.html#faq5と 打ち込んだ場合でも駄目でした。 たぶん、ブラウザの仕様だと思うのですが、 こうなってくると、javascriptでも無理でしょうか?
補足
すみません。ページの拡張子が .htm、.htmlでは、大丈夫みたいです。 実際のページの拡張子は、.phpになっています。 ですから、SafariなどのKHTMLブラウザでは、拡張子が.phpの場合は、 ハイパーリンクできないのです。となると、phpに問題がありそうですね。 何か、良い方法は無いでしょうか。
お礼
text/html です。 他のphpサイトで同じ事をやってみたら、動作したことを確認しました。 と云う事は、こちらのphpコードに問題があるのかも知れません。 phpによるCSS振り分けなどの処理を頭でやってたり、CSS自体もphpで、 動的に動作させてますので、これらのどこかに問題があるのでしょう。 さて、こつこつと調べてゆきます。 色々とありがとうございました。