616 字
3 分钟
博客篇:TwiKoo实现评论图片点击放大 🖼️✨
博客篇:TwiKoo实现评论图片点击放大 🖼️✨
前言 💬
之前博客写过一篇配置文章,里面有讲解如何集成TwiKoo评论系统。
不过TwiKoo默认是不支持图片点击放大的,但是fuwari主题默认是支持图片点击放大的。
那么这就非常好实现了💡,也不需要引入其他的插件了🙌。
开始实现 🛠️
修改配置文件 ⚙️
通过阅读代码发现fuwari主题是用的PhotoSwipe插件实现的图片点击放大🔍。
具体代码在src/layouts/Layout.astro文件中配置:
function createPhotoSwipe() { lightbox = new PhotoSwipeLightbox({ gallery: ".custom-md img, #post-cover img, .tk-content img", ... )}}首先需要在gallery中添加TwiKoo评论区域img标签图片所在的父元素ID或者class属性。
我这里就直接在原本基础上加上了:.tk-content img 🧩。
但是由于我们的评论组件是 动态加载 的⚡,所以想让图片点击生效还需要添加一行代码,将createPhotoSwipe方法绑定到window对象上。
function createPhotoSwipe() { lightbox = new PhotoSwipeLightbox({ gallery: ".custom-md img, #post-cover img, .tk-content img", ... )}}
(window as any).createPhotoSwipe = createPhotoSwipe;
...修改评论组件 💻
虽然实现了点击放大🖱️,但是鼠标移入图片的时候,鼠标应该变为放大镜🔎,所以还需要修改评论组件,添加样式。
需要在script代码里面动态添加上样式代码🎨:
// 动态创建样式并添加到页面const style = document.createElement('style');style.textContent = ` .tk-content img { cursor: zoom-in; transition: opacity 0.2s ease; } .tk-content img:hover { opacity: 0.9; } `;document.head.appendChild(style);console.log("动态样式已添加到页面");然后在评论组件init方法中的onCommentLoaded事件中调用刚刚为window对象绑定的方法⚙️。
twikoo.init({ envId: commentConfig.twikoo.envId, el: '#tcomment', region: commentConfig.twikoo.region, path: location.pathname, lang: commentConfig.twikoo.lang, onCommentLoaded: function() { console.log('Twikoo comments loaded successfully'); if (window.createPhotoSwipe){ window.createPhotoSwipe(); } }});这样就完成了评论组件里面图片的点击放大功能 🎉。
效果展示 👀


总结 📝
对于fuwari主题的博客,在集成twikoo后,
想在评论区实现图片点击放大,只需要修改Layout.astro文件和评论组件就行了💪。
当然这只是其中一种方式,还有很多方式可以实现评论区图片点击放大 🌈,有更多更好的实现方式可以在评论区留言~ 💬
参考链接 🔗
- 本博客
Github地址:https://github.com/ZyPLJ/fuwai_zyplj - 原作者开源地址:https://github.com/saicaca/fuwari
Astro/fuwai博客配置教程
博客篇:TwiKoo实现评论图片点击放大 🖼️✨
https://blog.pljzy.top/posts/博客篇twikoo实现评论图片点击放大/博客篇twikoo实现评论图片点击放大/ 相关文章 智能推荐
1
博客评论启用审核了
杂七杂八 博客评论启用审核了前言原本不打算发这篇文章的,写这篇文章还是上上上周的事了,结果今天又收到中转站的评论了,让我非常气愤
2
博客篇:给博客加上桌面宠物
杂七杂八 给博客加上一个可拖拽、可点击切换动画的桌面宠物,页面切换也不刷新;支持本地资源与 CDN 雪碧图配置。
3
博客篇:新增图片页面
杂七杂八 博客篇:新增图片页面前言换博客之后,也是折腾了挺多功能,比如评论、友链页面、文章置顶等等。和我之前的旧博客比起来还是少了些功能。想着加一个图片页面出来,说干就干,用Cursor给博客添加了个图片页面,用于展示图片。
4
博客篇:文章列表添加评论数显示
杂七杂八 博客篇:文章列表添加评论数显示前言目前博客文章列表只会显示字数和阅读时间,不会显示评论数,不过博客接入了twikoo评论系统,我翻了翻官方文档,发现有提供获取评论数的API接口。如图:那么事情就变得简单起来了,只需要调用这个接口,然后把返回的数据渲染到对于的文章列表上即可。
5
博客篇:给博客添加多级菜单功能
杂七杂八 给博客添加多级菜单功能📝 前言目前我使用的这个博客模版是基于Astro的fuwari开源博客模版。🌟我也是经过了一系列魔改给博客添加了如下功能:🛠️🎵 音乐播放器
随机文章 随机推荐