0

私はしばらくこの問題について考えてきましたが、最善の方法がよくわかりません。

私が持っているレールアプリではbooks、多くchaptersの があり、多くの がありsectionsます。チャプターは基本的にセクションの入れ物にすぎませんが、テキスト自体の文字列を含む場合があります。セクションには、書籍のテキストのほとんどが含まれています。

モバイル ブラウザーで動作する HTML 5 電子ブック リーダーを作成する予定です。ユーザーが下にスクロールする必要はありません。ページの最後でテキストを分割したいのです。

使用するのが良いと思いましsplitたが、定期的に休憩する方法があるかどうかわかりませんか? ここでは JavaScript オプションの方がうまく機能しますか?

私はこれを見ました:Ruby on Railsでページングを使用してテキスト記事をより小さな部分に分割しますが、テキストに手動の区切り記号を挿入することはできません。そのうちのいくつかは90,000語以上です。

どんなアイデアでも大歓迎です。

4

3 に答える 3

0

ページを簡単に埋めるのに十分な量のページ コンテンツを送信し、クライアント スライドで JavaScript を使用して、スクロール バーが消えるまでページから文を削除します。

Resize.jsは、私が少し前に書いたものと似ています。画面がいっぱいになるまで画面で使用されるフォント サイズを拡大/縮小したかった (ダッシュボード モニターの場合)。

このコードを適応させる方法がわからない場合はお知らせください。

注: また、最終的に表示されるテキストの量を JavaScript に記録させ、それを「次のページ」リクエストでサーバーに渡すことで、サーバーは次のページを開始する場所を認識します。

于 2012-06-03T01:41:02.973 に答える
0

ここでの主な問題は、ページの長さがデバイス (アプリの機能である場合はテキスト サイズ) に依存することだと思います。おそらく、一度に少なくとも 5 ページの長さになる大きなチャンクを送信してから、javascript にページングを行わせる必要があります。Rails は、ディスプレイのサイズにアクセスできませんし、アクセスするべきでもありません。

テキストに必要なデータは非常に少ないため、必要以上に送信したり、メモリに保持しすぎたりすることを心配する必要はありません。

于 2012-05-31T13:32:11.757 に答える
0

空白行 ("\n" または "
") をセパレータとして使用できます。

于 2012-05-31T13:33:43.723 に答える