DmitryOpalev
18.12.2016 - 21:56
Есть проект на node.js, написан не мной.
Ссылки типа /#/path.
При переходе по ссылке отступ относительно верха сохраняется, выглядит не очень. Есть идеи как исправить?
_____________
Курс валют
Invis1ble
18.12.2016 - 22:13
DmitryOpalev
18.12.2016 - 22:24
Invis1bleДанный пример не подходит, т.к. страница может не успеть подгрузиться. В итоге мы скачем наверх, видим старую страницу, потом видим обновление.
_____________
Курс валют
Invis1ble
18.12.2016 - 22:28
А поставить прокрутку после загрузки новой страницы не судьба?
_____________
Профессиональная разработка на заказЯ на GitHub |
второй профиль
AllesKlar
18.12.2016 - 22:33
Цитата (DmitryOpalev @ 18.12.2016 - 20:24) |
Данный пример не подходит, т.к. страница может не успеть подгрузиться. В итоге мы скачем наверх, видим старую страницу, потом видим обновление. |
Я как бэ не силен в node.js, но уж стандартные события типа onLoad там точно должны быть.
А дальше, как уже сказали
Цитата (Invis1ble @ 18.12.2016 - 20:13) |
Причем здесь node.js?
window.scrollTo(0, 0); |
_____________
[продано копирайтерам]
Цитата |
но уж стандартные события типа onLoad там точно должны быть. |
window.onload = function() {
window.scrollTo(0, 0);
};
Invis1ble
19.12.2016 - 04:44
Какой window.onload? Написано же:
Цитата (DmitryOpalev @ 18.12.2016 - 21:56) |
Ссылки типа /#/path. |
Цитата (DmitryOpalev @ 18.12.2016 - 22:24) |
В итоге мы скачем наверх, видим старую страницу, потом видим обновление. |
Надо вешать обработчик на событие
onhashchange или разобраться-таки в коде приложения, может там генерируется какое-то кастомное событие типа routechange или типа того. Ставим какой-нибудь флаг, что сменился роут.
Далее разобраться, как рендерится новый контент и обнулять прокрутку после рендеринга, если выставлен наш флаг.
Но самыми первыми действиями должно быть определение, на чем написано приложение (вангую какой-нибудь фреймворк) и гуглёж по соответствующим ключам. Говорят, помогает в 99% случаях
_____________
Профессиональная разработка на заказЯ на GitHub |
второй профиль
Invis1ble не соглашусь с вами, поясню )
Цитата |
При загрузке страницы экран остается на месте |
Цитата |
При переходе по ссылке отступ относительно верха сохраняется |
Весь необходимый контент уже получен и вставлен в тело документа
Цитата |
Есть проект на node.js, написан не мной. |
Раз проект написан на node.js, значит весь контент получает либо по сокетам, либо другим путем. А значит, надо просто в callBack добавить прокрутку страницы
Цитата |
Но самыми первыми действиями должно быть определение, на чем написано приложение |
ТС ведь указал, на node.js. Был у меня опыт, когда обычный сайт рендерился через сокеты
Invis1ble
19.12.2016 - 14:21
Цитата (ИНСИ @ 19.12.2016 - 11:40) |
А значит, надо просто в callBack добавить прокрутку страницы |
Вообще-то, я об этом и написал:
Цитата (Invis1ble @ 19.12.2016 - 04:44) |
обнулять прокрутку после рендеринга, если выставлен наш флаг. |
Цитата (ИНСИ @ 19.12.2016 - 11:40) |
ТС ведь указал, на node.js. |
Каким боком серверный движок относится к клиенту?
Цитата (ИНСИ @ 19.12.2016 - 11:40) |
рендерился через сокеты |
Zzepish
19.12.2016 - 17:15
ИНСИ
Цитата |
Был у меня опыт, когда обычный сайт рендерился через сокеты |
Это как????
sergeiss
19.12.2016 - 17:45
Цитата (Zzepish @ 19.12.2016 - 17:15) |
ИНСИ Цитата Был у меня опыт, когда обычный сайт рендерился через сокеты
Это как???? |
Сделаю предположение, что по запросам через сокеты приходил ответ в виде готового HTML, который вставлялся в определенные места.
_____________
*
Хэлп по PHP*
Описалово по JavaScript *
Хэлп и СУБД для PostgreSQL*
Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги. *
"накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)
Zzepish
19.12.2016 - 18:37
sergeiss
Но это не сам процесс рендеринга же
Цитата |
Вообще-то, я об этом и написал: |
Ну вот, значит ТС получил ответ на свой вопрос сразу два раза )
Цитата |
Сделаю предположение, что по запросам через сокеты приходил ответ в виде готового HTML, который вставлялся в определенные места. |
Было куда хуже. Часть данных хранилась в Базе данных (прайс лист с тектами, картинками и т.д.). Часть хранилась в объекте JS. Другая часть нативно html файлы парсил и отдавал. Вот такой вот синопсис ))))
Я не взялся за проект. Нервы и время дороже пару сотен баксов))))
Zzepish
20.12.2016 - 13:08
ИНСИ
О_о
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.