Как использовать перетаскиваемые разделы, как в iGoogle? - PullRequest
8 голосов
/ 02 марта 2009

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

UPDATE

Как сделать так, чтобы измененный макет был сохранен для следующей загрузки? Я догадываюсь, что это какое-то печенье?

Ответы [ 5 ]

5 голосов
/ 02 марта 2009
5 голосов
/ 02 марта 2009

Любая современная инфраструктура на стороне клиента обеспечит такую ​​функциональность.

Просто назвать несколько ...

Что касается «сохранения» (непротиворечивости, если хотите) данных, это зависит от серверной части вашего сайта, но обычно это делается посредством асинхронного вызова сервера, который сохраняет состояние в БД ( обычно).

2 голосов
/ 02 марта 2009

Я не хочу давать краткий ответ на этот вопрос, но есть несколько десятков различных библиотек JavaScript, которые предоставляют такую ​​функциональность, а также множество учебных пособий и руководств, доступных в Google:

http://www.google.com/search?q=javascript+draggable

Некоторые библиотеки / фреймворки JavaScript, на которые вы можете взглянуть:

2 голосов
/ 02 марта 2009

Это удивительно просто с jQuery . Проверьте эту запись в блоге на эту тему.

Редактировать: Я пропустил часть вопроса "состояние страницы сохранено", когда я ответил. Эта часть будет сильно отличаться в зависимости от структуры вашего приложения. Вам нужно как-то хранить состояние страницы, и это будет зависеть от пользователя. Если вы не возражаете заставлять пользователя восстанавливать свои предпочтения каждый раз, когда он очищает свой кеш-файл cookie, вы можете сохранить состояние с помощью cookie-файла.

Я не знаю, как структурировано ваше приложение, поэтому я не могу вносить дальнейшие предложения, но сохранение cookie в jQuery также удивительно просто. Первая часть этой записи в блоге расскажет вам почти все, что вам нужно знать.

1 голос
/ 02 марта 2009

Один из методов, не упомянутых здесь, заключается в том, что начиная с ASP.NET в среде 2.0, Microsoft представила нечто, называемое WebParts, которое позволило создавать элементы управления, которые можно перетаскивать и размещать таким же образом. Это должен был быть простой способ для пользователей создавать свои собственные порталы в стиле Web 2.0.

...