0

我一直在考虑这个问题,但不太确定解决这个问题的最佳方法。

在我拥有的 Rails 应用程序中books,其中有很多chapters,其中有很多sections. 章节基本上只是章节的容器,尽管它们本身可能包含文本字符串。这些部分包含大部分书籍文本。

我正计划构建一个在移动浏览器中工作的 HTML 5 电子书阅读器,我不希望用户必须向下滚动——我希望文本在页面末尾中断。

我认为 usingsplit可能是要走的路,但我不确定有没有办法定期休息?javascript选项在这里会更好吗?

我看过这个:在 Ruby on Rails 中使用分页将文本文章分成更小的部分,但无法在文本中插入手动中断标记,其中一些是 90,000 多个单词。

任何想法,将不胜感激。

4

3 回答 3

0

我认为这里的主要问题是页面长度将取决于设备(可能还有文本大小,如果这是您的应用程序的功能)。您可能应该一次发送肯定至少有 5 页长的大块,然后让 javascript 进行分页。Rails 无法访问,也不应该访问显示的大小。

文本需要很少的数据,您不必担心传输超出您的需要或在内存中保留太多。

于 2012-05-31T13:32:11.757 回答
0

您可以使用空行(“\n”或“
”)作为分隔符。

于 2012-05-31T13:33:43.723 回答
0

我会向下发送足够多的页面内容以轻松填充页面等等,然后在客户端幻灯片上使用 javascript 从页面中删除句子,直到滚动条消失。

Resize.js与我不久前写的类似。我想放大/缩小屏幕上使用的字体大小,直到屏幕填满(对于仪表板监视器)。你的会是相似的,但不是改变字体大小,而是修剪句子。

如果您看不到如何调整此代码,请告诉我。

注意:我还会让 javascript 记录它最终显示的文本数量,并在“下一页”请求中将其传递给服务器,以便服务器知道从哪里开始下一页。

于 2012-06-03T01:41:02.973 回答