Электронная книга в iOS, использующая мультиколонку CSS (рассчитать диапазон текста в другом столбце) - PullRequest
0 голосов
/ 21 декабря 2010

Мой первый вопрос здесь. Поправь меня, если я сделал что-то не так.

Я нашел здесь источник, демонстрирующий, как разбить HTML на страницы, используя многостолбцовый CSS. http://groups.google.com/group/leaves-developers/browse_thread/thread/27e4bf5ff3c53113/f137dc01b6d853b7

Мой вопрос: Как рассчитать диапазон / расположение текста в другом столбце (странице)?

Например, при изменении размера шрифта, текст на текущей странице перейдет на другую страницу. Чтобы решить эту проблему, программа должна сохранить текущее местоположение текста, и перейдите на правильную страницу (столбец) после переформатирования веб-страницы.

Это также полезно для реализации функции закладок.

Я думаю, что это должно быть сделано с помощью JavaScript, но я новичок в JavaScript.

Любые предложения и советы приветствуются.

1 Ответ

0 голосов
/ 21 декабря 2010

Это немного общий вопрос, и на него очень трудно ответить, поэтому я просто попытаюсь указать вам направление, в котором я могу попытаться.

Я понятия не имею, как устроен макет вашей страницы.может выглядеть или функционировать, но теоретически вы можете сделать это, проверяя текстовый узел вашего «столбца» всякий раз, когда вы изменяете размер шрифта (предполагая, что это изменение размера шрифта вызывается нажатием кнопки).Так, например, скажем, у вас есть div с идентификатором # column_1, всякий раз, когда кто-то щелкает по элементу пользовательского интерфейса кнопки, вы можете вычислить первые несколько символов # column_1, затем искать в строке, чтобы найти этот текст, и загружать все, что нет.символов, которые вы определили как «страницу» вокруг этого текста, и вызовите свой метод рендеринга, чтобы «повернуть» эту страницу.Таким образом, поток вашей функции может выглядеть примерно так:

zoomControl.click(click event){ //do something when you click the zoom control
var text = findTextofCurrentPage() //get the first bit of text of your current 'page'
renderLargerTextSize() //re-render your 'page' w/ larger text (for user feedback purposes)
renderPageWith(text) //render/navigate to the 'new' page wherein your the text in the variable 'text' can be found
}

Очевидно, это супер общая идея о том, какие функции / методы вы можете использовать, чтобы это произошло, но я думаю, что если вы покопались вJS и сказать что-то вроде JQuery, такого рода вещи можно сделать относительно легко.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...