При посещении URL моего блога со ссылкой на Disqus (например, url-to / my-blog-post # disqus_thread ) браузер не прокручивается до <div id="disqus_thread">
element.
Вместо этого, если я уже на странице url-to / my-blog-post и нажмите ссылку на url-to / my-blog-post # disqus_thread он прокручивается до div
.
Я думал, что это проблема с загрузкой.Браузер посещает страницу и не находит элемент div
, так как он все еще должен генерироваться Disqus JS.Я пытался изменить положение кода JS, но ничего не изменилось.
Это пример URL-адреса поста из моего блога: https://2bluebuffalo -en.blogspot.com / 2018/11 / how-to-crop-square-video-macos.html # disqus_thread Не работает, но если щелкнуть ссылку рядом с «By Blue Buffalo» (над кнопками общего доступа, теперь написано «2 комментария»), якорьссылка работает.
Обходной путь
Хорошо, это обходной путь, который я нашел.Это работает просто хорошо.На всякий случай, если кто-то нажмет эту ссылку.
<script>
setTimeout(function(){
var hash = window.location.hash.substr(1);
if (hash == "disqus_thread") {
location.hash = "#comments";
location.hash = "#" + hash;
};
}, 1000);
</script>
Ожидание происходит потому, что это занимает у меня одну секунду.загрузить все (иногда даже больше).Это можно изменить.