Bitcron Disqus 评论插件实现点击加载
博客接入了 Disqus 评论插件,方便和读者进行交流。但 Disqus 再国内加载较慢,影响体验,于是尝试通过「点击加载」来完成。
首先,在 Bitcron 模版的 post.jade
中添加「点击加载」按钮。
div(style='text-align:center;padding: 10px;')
button#load-disqus(onclick='disqus.load();') 评论
#disqus_thread
然后,在后台配置中,添加一段 JS 代码 ^1。为了方便起见,可以直接添加在 呈现 → 嵌入模版中。
<!-- 点击加载评论组件 -->
<script type="text/javascript">
var disqus = {
load : function disqus(){
var disqus_shortname = 'huhuhang'; // 修改为自己的 Disqus 名称
if(typeof DISQUS !== 'object') {
(function () {
var s = document.createElement('script'); s.async = true;
s.type = 'text/javascript';
s.src = '//' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('HEAD')[0] || document.getElementsByTagName('BODY')[0]).appendChild(s);
}());
$('#load-disqus').remove(); // 加载后自动删除
}
}
}
</script>
接下来,刷新页面测试按钮是否有效。如果可以点击加载,再补充一段样式代码 ^2 到 CSS 中即可,让按钮变得更加美观。
#load-disqus {
display: inline-block;
padding: 0 20px;
font-size: 14px;
color: #656c7a;
background: #fff;
border: 2px solid #656c7a;
text-decoration: none;
border-radius: 2px;
transition-property: background-color;
transition-duration: 0.2s;
transition-timing-function: ease-in-out;
transition-delay: 0s;
line-height: 2;
}
#load-disqus:hover {
border-color: #656c7a;
color: #fff;
background: #656c7a;
}
接下来,那就可以看的如下所示的「点击加载」按钮了。👇