Оптимальная многостраничная навигация - PullRequest
2 голосов
/ 20 августа 2009

Я сталкивался со многими веб-сайтами и даже настольными приложениями, которые имеют элемент управления типа крошки для навигации по страницам информации.

Например, для заданных X страниц, на которых пользователь в данный момент находится на странице N, SOFU имеет элемент управления хлебной крошкой, который отображает навигацию по страницам в виде:

(X[N-1])(X[0])...(X[N-2])(X[N-1])(X[N])(X[N+1])(X[N+2])...(X[X-1])(X[N+1])

Я видел все варианты этого элемента управления. Мне интересно, есть ли способ оптимизировать этот вид управления, чтобы пользователь мог переходить на любую страницу данных за минимальное количество переходов. Я знаю, что есть очевидные ответы, такие как позволить пользователю указать номер страницы или ввести URL-адрес рукой, но я думаю о более академическом решении, где альтернативы недоступны.

Я не очень умный и не в восторге от математики. Есть идеи, с чего начать без грубого решения проблемы?

1 Ответ

1 голос
/ 20 августа 2009

Вы можете добавить ссылки для страниц в последовательности Фибоначчи от текущей страницы до начала и конца последовательности, например:

(Х [0]) ... (Х [Н-8]) ... (Х [N-5]) ... (Х [N-3]) (Х [N-2]) (Х [N-1]) (Х [N]) (Х [N + 1]) (Х [N + 2]) (Х [3]) ... (Х [N + 5]) ... (Х [N + 8]) ... (Х [Х-1])

Я думаю, что это даст вам хорошее соотношение между ссылками и пространством, но все равно займет много места. Если этого недостаточно, вам следует подумать о том, насколько конкретно ваши пользователи знают страницу, которую они хотят, и сколько ссылок на страницы вы можете им предложить / они могут терпеть.

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