Удаление набора кадров делает очень большую страницу - PullRequest
0 голосов
/ 21 января 2010

Мне было поручено удалить набор фреймов с веб-сайта (теперь сайт должен индексироваться различными способами, поэтому набор фреймов должен идти)

Набор фреймов состоит из левого проводника, подобного дереву (которое может иметь тысячи узлов). Правая рука - это то место, где появляется основное содержание.

(я оставлю этот вопрос не как язык, так как он действительно применим к сети в целом, но мы используем ASP.Net, так что это немного проще, если рассматривать MasterPages)

Причина, по которой он изначально находится во фрейме, заключается в том, что дерево не перезагружается при каждом обновлении страницы ... что при удалении фрейма будет проблемой.

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

Мы рассматривали такие вещи, как панель jquery, которая расширяется с левой стороны - ее все равно нужно будет загружать при каждом обновлении страницы, хотя ...

Ответы [ 4 ]

1 голос
/ 21 января 2010

Как насчет загрузки только небольшой части дерева при загрузке страницы (например, корневого уровня и, возможно, братьев и сестер текущего узла) и использования Ajax для заполнения дочерних узлов, как и когда на них нажимают?

1 голос
/ 21 января 2010

Может ли частичное кэширование быть ответом?

http://www.4guysfromrolla.com/articles/022802-1.aspx

ИМХО, я не думаю, что даже огромное текстовое меню / дерево является проблемой - если у вас есть 2000 элементов, каждый из которых имеет, скажем, 20 символов, в целом вы загружаете 20 КБ данных ... это называется "крошечным", если мы говорим в манерах JavaScript:)

0 голосов
/ 21 января 2010

Если вы не хотите передавать дерево при каждой загрузке страницы, тогда единственным вариантом является фрейм.

Другим вариантом может быть передача дерева по требованию (не с помощью javascript, поскольку оно не будет использоваться ботами поисковой системы). Если пользователь выбирает корневой узел, загрузите следующую страницу с развернутыми дочерними узлами и т. Д.

0 голосов
/ 21 января 2010

Просто используйте серверные включения. В ASP вы можете использовать #include для этого.

...