给Memos添加Twikoo评论

2024-05-09 46 11

自定义脚本

插入以下代码,修改https://t.memos.ee为自己的twikoo地址即可

var twikooENV = 'https://t.memos.ee'
function addTwikooJS() { 
  var memosTwikoo = document.createElement("script");
  memosTwikoo.src = `https://cdn.staticfile.org/twikoo/1.6.32/twikoo.all.min.js`;
  var tws = document.getElementsByTagName("script")[0];
  tws.parentNode.insertBefore(memosTwikoo, tws);
};
function startTwikoo() {
  startTW = setInterval(function(){
    var nowHref = window.location.href;
    var twikooDom = document.querySelector('#twikoo') || '';
    if( nowHref.replace(/^.*\/(m)\/.*$/,'$1') == "m"){
      if(!twikooDom){
        addTwikooJS()
        setTimeout(function() {
          var memoTw = document.querySelector('.gap-2') || '';
          memoTw.insertAdjacentHTML('afterend', '<div id="mtcomment"></div>');
          twikoo.init({
            envId: twikooENV,
            el: '#mtcomment',
            path: nowHref.replace(/^.*=?(http.*\/m\/[0-9]+).*$/,'$1'),
            onCommentLoaded: function () {
              startTwikoo();
            }
          })
        }, 1500)
      }else{
        clearInterval(startTW)
      }
    }
  }, 2000)
}
startTwikoo();

相关文章

关于Memos的版本选择
新版memos 调用 API 实现说说功能
Memos 的 CSS美化代码[更新]
博客头部滚动展示 最近的memos 基于memos v0.22.2
使用memos API 构建一个朋友圈的页面
使用memos API 通过 CF workers中转获取json

评论(11)

  1. 加载会比较慢一些,memos已经展示了,但是twikoo得等一会儿才会展示,是什么原因呢?memos和twikoo都是架在我的服务器上的

    1. @husai 因为逻辑就是先加载memos 然后 再插入 加载 评论 你可以尝试把twikoo的js下载放在自己的服务器 而不是使用第三方公共的CDN地址

        1. @husai 你把这个`https://cdn.staticfile.org/twikoo/1.6.32/twikoo.all.min.js`下载到你的网站目录中,最好是与twikoo对应的版本
          然后把`https://cdn.staticfile.org/twikoo/1.6.32/twikoo.all.min.js`改为你网站中访问的js地址

发布评论