当使用Disqus锚链接访问我的博客urls时(例如,url-to/my-blog-post#disqus_thread) ),浏览器不会向下滚动到<div id="disqus_thread">元素。
相反,如果我已经在url-to/my-blog-post页面上并单击指向url-to/my-blog-post#disqus_thread的链接,它将向下滚动到div。
我以为是装货问题。浏览器访问页面,没有找到div元素,因为它仍有待Disqus生成。我试图更改JS代码的位置,但是没有什么改变。
这是我博客中的一个示例文章url:thread它不工作,但是如果您单击“Buffalo”旁边的链接(在共享按钮上方,现在它被写成“2条评论”),锚链接就能工作了。
解决办法
好吧,这就是我找到的解决办法。效果很好。以防有人点击那个链接。
<script>
setTimeout(function(){
var hash = window.location.hash.substr(1);
if (hash == "disqus_thread") {
location.hash = "#comments";
location.hash = "#" + hash;
};
}, 1000);
</script>等待是因为我花了一秒钟时间。加载所有东西(有时甚至更多)。是可以改变的。
发布于 2019-01-25 09:54:22
你可以试试这个黑客:
编辑博客的HTML并添加Disqus脚本。对于您的评论,您可以这样做:
<div id = "comments">
<div id = "disqus_thread"></div>
</div>这将带您到注释部分并加载Disqus注释。
https://stackoverflow.com/questions/54252716
复制相似问题