引用FancyBox插件为Typecho文章图片添加灯箱效果

FancyBox是一款优秀的弹出框Jquery插件,FancyBox提供了一种简洁优雅的方式去为图片、网页和多媒体添加灯箱功能。

1、引用 FancyBox插件

把下面内容添加到 header.php 中 前面

1
2
3
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script> <!--如果主题已经引用了jQuery库,可以忽略这条-->
<link rel="stylesheet" href="https://cdn.staticfile.org/fancybox/3.5.2/jquery.fancybox.min.css">
<script src="https://cdn.staticfile.org/fancybox/3.5.2/jquery.fancybox.min.js"></script>

2、修改post.php

打开post.php,将
<?php $this->content(); ?>
修改为:

1
2
3
4
5
6
<?php
$pattern = '/\<img.*?src\=\"(.*?)\"[^>]*>/i';
$replacement = '<a href="$1" data-fancybox="gallery" /><img src="$1" alt="'.$this->title.'" title="点击放大图片"></a>';
$content = preg_replace($pattern, $replacement, $this->content);
echo $content;
?>

3、初始化FancyBox (貌似不需要)

把下面js添加到 footer.php 文件的前

1
2
3
4
5
<script type="text/javascript">
$(document).ready(function () {
$( ".fancybox").fancybox();
});
</script>

大功告成!
来源:运行狗

所需要的静态资源

header.php

1
<link href="https://lib.baomitu.com/fancybox/3.5.7/jquery.fancybox.css" rel="stylesheet">
1
2
<script src="https://lib.baomitu.com/jquery/3.5.1/jquery.min.js"></script>
<script src="https://lib.baomitu.com/fancybox/3.5.7/jquery.fancybox.min.js"></script>

引用FancyBox插件为Typecho文章图片添加灯箱效果
http://yoursite.com/2022/08/21/typecho/FancyBox/
作者
雨停之後
发布于
2022年8月21日
许可协议