![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Задача - запомнить позицию скроллинга и вернуться к ней при обновлении страницы. Например, информация всё время меняется, но бегунок скроллера должен оставаться на месте при обновлении страницы.
Возможно, в парсеньи ошибка - но до неё даж не доходит - document.body.scrollTop возвращает 0 вне зависимости от положения скроллинга почему-то Это сообщение отредактировал(а) Се ля ви - 26.1.2005, 15:26 -------------------- |
|||
|
||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
а что такое "[CDATA]"??
Добавлено @ 17:58 вот это:
нафик убери и всё зарулит Добавлено @ 17:59 ну и ещё в парсе проблема. |
|||
|
||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
|
|||
|
||||
| Се ля ви |
|
||||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Так, проблема частично решилась - для Mozilla и FireFox`а - там есть свойство объекта window под названием scrollY - показывает в пикселах позицию, на которую сейчас пользователь прокрутил окно браузера относительно документа - если это значение передать методу window.scrollTo(xPos, yPos) - и документ прокрутится куда надо.
Но в IE оно не поддерживается, к тому же, насколько я понял, манипуляция со скроллингом не входит ни в DOM, ни в ECMAScript - так что это самодеятельность разработчиков браузеров... -------------------- |
||||
|
|||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Офигеть... Значит, дело было в XHTML`е...
-------------------- |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Се ля ви просто без DOCTYPE браузер работает в quirksmode, который совместимый с прошлыми поколениями браузеров. Читай http://www.quirksmode.org там же ответ на твой вопрос.
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Вобщем, если кому-то понадобится - можете копировать, что получилось. А получилось - следующее:
Надо это всё добавить в тело скрипта, удалить или закомментировать !DOCTYPE - и больше ничего. Довольно удобно смотреть всё время изменяемые документы так. Например, новости в реальном времяни - если их много на странице... Если очень хочется вписать DOCTYPE, вариант, приведённый 3-мя постами выше будет работать, но только в Мазилле и Огненной Лисе, так что переходите на правильные браузеры Это сообщение отредактировал(а) Се ля ви - 27.1.2005, 17:04 -------------------- |
|||
|
||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
а чем то что я написал-то не подходит?
|
|||
|
||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Alx
Не достаточно тщательно проработаны детали для использования некомпетентным человеком во всех возможных случаях. Например, что выдаст твой скриптик, если у страницы уже есть какие-то get-параметры запроса? У моего скрипта тоже несколько незначительных ограничений, впрочем - например, если пользователь задал событие window.onload или как ты в body это указал - мой скрипт с ним законфлектует и нужно будет разделять их специально. Просто привычка делать всё максимально универсально, что бы в похожих задачах можно было максимально не разбираясь использовать потом... -------------------- |
|||
|
||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
Се ля ви
это конечно хорошо, но вот насчет window.onload - никогда им не пользовался, поэтому не знаю - лозначает ли он просто успешное открытие документа или полную загрузку всех элементофф страницы? (как body.onload) |
|||
|
||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Это синонимы с той разницей, что window.onload работает только в ЯваСцрипт 1.1 и выше, а в теге боди можно было прописать load и раньше... -------------------- |
|||
|
||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
Се ля ви
пасиб |
|||
|
||||
| Се ля ви |
|
||||||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Господа, новые решения и новые, т.е. хорошо забытые старые, проблемы.
Потребовало от меня начальство другого, более "чистого" решения данной задачи - что бы не портить строку запроса новыми параметрами. После мозгового штурма, решено было воспользоваться куками. Не мудрствуя лукаво, нагло слизал скрипт с http://www.citforum.ru/internet/javascript/jscookie.shtml , приспособив под данную задачу:
Скрипт этот, к сожалению, не без изъяна. Дело в том, что в нём предполагается, что в начале документа стоит конструкция следующего вида:
Но штука в том, что, как показала практика, ревреш, заданный тегом при этом скрипте почему-то перестаёт фурычить. Есть, канешь, обход - вписать скрипт:
Есть ещё идеи, как с этим бороться? -------------------- |
||||||
|
|||||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Хм, небольшое уточнение - она не пашет после полного обновления страницы вручную по Ctrl-F5 и возможно, это очередной глюк IE...
Вопрос снят, скрипт рабочий, можете брать и юзать, если нужно, хотя объяснение этой странности поиметь было бы неплохо... И при простом обновлении на F5 почему-то автообновление в IE теряется... В др. браузерах не тестил... Это сообщение отредактировал(а) Се ля ви - 7.2.2005, 12:36 -------------------- |
|||
|
||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
Кароче, вот финальный, пакетный вариант. Если разместить это перед закрывающим тегом "</body>", то при постоянном обновлении страницы позиция просмотра будет оставаться на том же месте:
Это сообщение отредактировал(а) Се ля ви - 16.9.2008, 21:39 -------------------- |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |