





Всем привет, это Картошка, и сегодня мы устраним проблему отката лога в начало для браузера Google Chrome. Это займёт две минуты времени.
Инструкция:
1. Устанавливаем расширение Tampermonkey.
2. Создаём новый скрипт.
https://s8.hostingkartinok.com/uploads/ … c7da40.png
3. Вносим туда следующий текст.4. Сохраняем.
https://s8.hostingkartinok.com/uploads/ … abb8ca.png
Спасибо, JS-решение изящное.
Включили в основную ветку.)
Этот скрипт в Tampermonkey можно отключать)
«О гордости, предательстве и братстве закончена история моя! И если не посмеешь ты вмешаться, я закрываю книгу бытия…»


Хотя мне кажется теперь, что есть другая проблема с прокруткой — теперь уже в Firefox’е.
Может, и кажется…
Пишите, если что, тему не закрываю.
«О гордости, предательстве и братстве закончена история моя! И если не посмеешь ты вмешаться, я закрываю книгу бытия…»

Всем привет, это Картошка, и сегодня мы устраним проблему отката лога в начало для браузера Google Chrome. Это займёт две минуты времени.
Инструкция:
1. Устанавливаем расширение Tampermonkey.
2. Создаём новый скрипт.
https://s8.hostingkartinok.com/uploads/ … c7da40.png
3. Вносим туда следующий текст.4. Сохраняем.
https://s8.hostingkartinok.com/uploads/ … abb8ca.pngСпасибо, JS-решение изящное.
Включили в основную ветку.)Этот скрипт в Tampermonkey можно отключать)
Все-равно перекидывает на начало лога..
Google Chrome Версия 81.0.4044.129
Сообщение удалено модератором Властелин Ничего 02.05.2020 18:25:03




У меня дома нет телевизора, поэтому я ем грибы и смотрю ковер.

у тебя скрин не отображается))

Спасибо, JS-решение изящное.
Хотя мне кажется теперь, что есть другая проблема с прокруткой — теперь уже в Firefox’е.
В первую очередь хочу сказать, что радует тот факт, что спустя 4 месяца о проблеме было услышано. Это факт и его нужно признавать, администрации + в карму.
Но...
Я канечна ни икспертЪ.
Но мне кажется, тут должен быть IF - ELSE. Потому что если выполняется первое(то, что под ифом) - второе(то что после ифа) не нужно.
И, я явно не экспертЪ, и могу ошибаться в том, что напишу дальше, но window.scrollTo - прокручивает до пикселя... Думаю, это подразумевает тот факт, что страница должна отрендерится.
$(function ()) выполняется, когда прогружается DOM дерево(без учета изображений), а не рендерится страница. Грубо говоря, кидать будет чуть выше из-за того, что при расчете пикселя не учитывается высота изображений(а их в логе минимум 7). По крайней мере у меня так точно происходит в мозилле.
Возможно, корректнее будет использовать $(window).load или window.onload, так как они выполняются после того, как страница полностью готова.
Более того, с этим еще связано и то, что в localStorage сохраняется не совсем верное значение. Если открыть уже завершенный лог и прокрутить чуть-чуть, потом обновить страницу - после каждого обновления скролл будет смещаться на определенный dY(как раз таки на тот, который занимают картинки).
P.S. Ни в коем случае не претендую на звание эксперта, это должность Картофана с его тимперманки.
$(function () {
if ('scrollRestoration' in history) {
history.scrollRestoration = 'auto';
}
localStorageSupported = ('localStorage' in window && window['localStorage'] !== null);
if (localStorageSupported) {
window.scrollTo (0, localStorage['scrollPosition'] | 0);
$(window).scroll(function () {
localStorage['scrollPosition'] = window.pageYOffset || document.documentElement.scrollTop;
});
}
});
$(window).load(function()
{
if ('scrollRestoration' in history)
history.scrollRestoration = 'auto';
else
{
localStorageSupported = ('localStorage' in window && window['localStorage'] !== null);
if (localStorageSupported)
{
window.scrollTo(0, localStorage['scrollPosition'] | 0);
$(window).scroll(function() {localStorage['scrollPosition'] = window.pageYOffset || window.scrollY || document.documentElement.scrollTop;});
}
}
});
Проверил в последних версиях Оперы, Хрома, Мозиллы - работает, как должно работать.
@Valera_traktorist


Evil bob, твоя аргументация про события правильно, событие window load действительно уместнее... Но и так тоже впрямую не работает..
Тут при вроде бы очевидном подходе возникают некоторые некроссбраузерные костыли...
Попробовал костыли подпереть..
Заодно сделал так, чтобы он запоминал позицию в каждом конкретном логе, а не глобально одну для всех.
«О гордости, предательстве и братстве закончена история моя! И если не посмеешь ты вмешаться, я закрываю книгу бытия…»

Надеюсь, scrollPosition****** хранится не более часа на компе. Несложно представить, что некоторые люди могут за день и 100 логов просмотреть.
Раз уж такое дело и просьбы начали слышать - хотелось бы еще попросить заменить ссылку на jquery с https://yastatic.net на https://code.jquery.com/jquery-3.5.0.min.js или https://ajax.googleapis.com/ajax/libs/j … ery.min.js, в связи с тем, что в Украине часть операторов выполняет закон о блокировке Яндекса(в частности Киевстар - один из крупнейших моб. операторов). Поэтому либа не грузится со всеми вытекающими. Например вот тут у меня виджет не работает без впн, https://avt.mafiaonline.ru/.
Мелочь, но приятно. Не знаю, сколько людей столкнулось с этой проблемы, думаю что большинство пользователей даже не осознает, что что-то работает неправильно, когда заходят на сайт и видят вот такое:
@Valera_traktorist


По-моему легче сделать просмотрщик..... ну и реплеер..
>>> gift()
>>> exit()


По-моему легче сделать просмотрщик..... ну и реплеер..
Было бы офигенно, как в других онлайн-играх (типа монополии), когда ты можешь заходить в партию и смотреть ее , условно, в режиме онлайн.
Мне мама в детстве выколола глазки


Этот скрипт в Tampermonkey можно отключать)
Недавно перестало работать, вернулась к методу Картошки.
У меня гугл хром, просто уведомляю...
Рады видеть на форуме, apaapaapa! Мартини? Пина колада? Мохито?
изменить ксс это на все что ты способна??


Короче, способ Картошки уже тоже не работает. Сделайте что-нибудь! Невозможно следить за логом!
Отредактировано: apaapaapa (19.06.2020 00:45:34)
Рады видеть на форуме, apaapaapa! Мартини? Пина колада? Мохито?

Короче, способ Картошки уже тоже не работает. Сделайте что-нибудь! Невозможно следить за логом!
Попробуй следующее....
1. Ctrl+Shift+I
2. Application
3. Local storage
4. Right click + Clear.
Если у тебя там много значений(а у тебя там много значений) - то это просто переполнение памяти под локальные переменные, о чем я писал в личку кое-кому, но меня так и не услышали...
@Valera_traktorist

Хоть бы сказала, помогло чи не.
@Valera_traktorist


ПАМАГИТИ !Нет сил никаких больше(
Мб можно закладочку туда приделать?
Типа обновил и на своей закладке остался

Поменяйте скрипт из сообщения #22 на следующий
$(function() {
setTimeout(() => {
var $window = $(window);
window.scroll(0, sessionStorage.getItem('scrollPosition')|0);
$window.scroll(function () {
sessionStorage.setItem('scrollPosition', $window.scrollTop())
});
}, 500);
});и лог не будет скакать.
Нет.


Раньше все было ок, следишь за текущей партией, тыкаешь обновить и продолжаешь читать.
Теперь когда обновляешь оказываешься в начале лога)
Мб конечно это только у меня. Но как сделать по старому?
Опять стало выкидывать в начало (
Зая