- 締切済み
コンパイル済みhtmlヘルプ(拡張子chm)について
フレームセットを利用したページが作成してあり、 ( <frame name=header> と <frame name=contents> ) キーワードを検索したときに見つかったページにジャンプすると、 header や contents に直接飛ばされてしまいます。 これを、そのページを含むフレームセットに飛ばすにはどうしたらいいのでしょうか? ヘルプファイル作成ソフトはROBOHelpを使用しています。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- UKY
- ベストアンサー率50% (604/1207)
後先の変更を考えるならフレームを使うのもアーキテクチャ上の問題があると思いますが…… というか、フレーム以前に「タイトルをスクロールさせずに上部に固定」というデザインをやめた方がいいと思います。 普通のユーザーは、アプリケーション本体のウィンドウとヘルプのウィンドウを並べて見比べながら読もうとします。当然ヘルプを表示するウィンドウは相対的に小さくなります。そこで更にタイトルを固定するなどすれば、本文を表示する部分がますます狭くなってしまいます。 なぜメモ帳やペイントのヘルプは白背景に黒字というシンプルなデザインなのでしょう? 狭い画面に派手な色使いでごちゃごちゃ書かれても読みにくいだけです。メモ帳のヘルプの文字が Web ページの標準サイズよりも一回り小さくなっているのも、小さな画面にできるだけ多く表示させるためです。 大きなウィンドウで表示しなければならないようなヘルプ、フレームでないと表示できないようなヘルプは、はっきり言って CHM 形式にする価値は低いと思います。そんなのをわざわざ CHM 形式にコンパイルするくらいなら、普通にブラウザで表示させた方がましです。せっかく CHM 形式にするんですから、CHM 形式らしいヘルプを作ってはどうですか。
- UKY
- ベストアンサー率50% (604/1207)
スクリプトを使えばおそらくできるでしょうが、それ以前にコンパイル済み HTML ヘルプでフレームを使う必要性が理解できません。 コンパイル済み HTML ヘルプ形式のヘルプには本文の HTML とは別に目次を表示できるはずなので、フレームが必要になる場面はないと思うのですが。
補足
フレームセットを利用する理由は、目次の為ではなく、 タイトルをスクロールさせずに上部に固定しようとしているためなんです。 これは、スクリプトを利用すれば可能なのですが、 ヘルプ作成ソフトのROBOHelpでは、 <script src="myscript.js">といった外部スクリプトの参照が 認められない(らしい)のです。 htmファイルの中に直接記述すればできるのですが、 それでは複数のhtmファイルで共通して使用するには記述に手間が掛かるし、 後に変更があった場合を考えると、 アーキテクチャに問題があるのは明らかです。 そのため、苦肉の策として、 フレームセットを利用するに至っています。
補足
仰しゃることは判っています。 が、「そうする必要がある」のに方法がわからないから質問しているのです。 質問文が冗長になるのを避け、最終的な質問だけで表記したのも誤解を生んだのかも知れませんが、 それを、最初の構築目的から、現状で禁止される項目など全て質問文に記述していては長くなりすぎて読んでももらえない可能性があったので、 簡潔に「できる」か「できない」のかを聞いたのです。