hexo matery 相册 视频相册 相册加密 描述备注

我的基本相册功能和相册加密功能是完全参考这篇matery相册功能和这篇matery相册加密功能实现的。有需要可以自取。

在此基础上,我进一步想实现以下两个功能:

  • 视频相册功能,即相册既可以放图片也可以放视频;
  • 描述备注功能,即在合适的位置为图片或视频显示一行描述。

我的实现效果可以看这里。我没有使用原文的等高功能,而用了瀑布流,所以看起来会有点不一样。

思路

本来对前端不太熟悉,我经过尝试发现原文里使用的fancybox插件可以播放视频并且和图片无缝切换,这就解决了最关键的视频播放问题。我们只需要给视频添加封面即可,这样我们只需要自己p一张图作为封面就好了。
经过百度和谷歌发现fancybox可以读取html5里面的data-caption字段显示在图片下方,文档在这里,然后我们只需要在.json里面再添加一个图片描述,放在data-caption字段就好了。

更改.json相册文件

原文里的galleries.json如下:

 [{"name": "2019","cover": "2019/IMG_20190331_165713_1.jpg","description": "2019年记录","photos": ["2019/IMG_20190118_200104.jpg","2019/IMG_20190118_200120.jpg","2019/IMG_20190118_200456.jpg"]}]

我把.json,即原文里的galleries.json改成了类似于这种形式,主要是:

  • 把原本的photo字段改为contents字段,因为我不仅放图片还放视频;
  • 添加tinies字段作为图片和视频的封面图,视频的封面需要自己p一张,我的做法是找一张视频播放的插画插入视频截图里,图片的封面就用原图就行;
  • 添加descriptions字段作为图片和视频描述。
[{"name": "不玩游戏","cover": "https://z3.ax1x.com/2021/09/03/hyEtHA.jpg","description": "不玩游戏,要玩玩具","contents": ["/medias/video/nianbao.mp4","https://z3.ax1x.com/2021/09/03/hyEtHA.jpg","https://z3.ax1x.com/2021/09/03/hyEYBd.jpg"],"tinies": ["https://z3.ax1x.com/2021/09/04/hgiyPP.png","https://z3.ax1x.com/2021/09/03/hyEtHA.jpg","https://z3.ax1x.com/2021/09/03/hyEYBd.jpg"],"descriptions": ["小粘包动次打次 2021/8/29","代码珠 2021/8/29","小油比 2021/8/20"]
}]

更改 gallery.ejs

原文的gallery.ejs里面一段内容用于生成imgsStr,如下:

var currentGallery = getCurrentGallery(galleries, pageTitle)var photos = currentGallery.photos;let imageStr = ''for (var i = 0, len = photos.length; i < len; i++) {var photo = photos[i];imageStr += "<a href=\"http://图片地址.com/" + photo + "\"" +"     class=\"photo-item\" rel=\"example_group\"" +"     data-fancybox=\"images\">" +"      <img src=\"http://图片地址.com/" + photo + "\"" +"       alt=" + photo + ">\n" +"    </a>"}

我把改为这样,主要是:

  • 把photos和photo分别改为contents和content,对应于galleries.json;
  • 把description放入data-caption字段;
  • 把tiny放入缩略图src字段。
var currentGallery = getCurrentGallery(galleries, pageTitle)
var contents = currentGallery.contents;
var tinies = currentGallery.tinies;
var descriptions = currentGallery.descriptions;
let imageStr = ''
for (var i = 0, len = contents.length; i < len; i++) {var content = contents[i];var tiny = tinies[i];var description = descriptions[i];imageStr += "<a href=\"http://图片地址.com/" + content + "\"" +"     class=\"photo-item\" rel=\"example_group\"" +"     data-fancybox=\"images\"" +"     data-caption=\"" + description + "\">" +"      <img src=\"http://图片地址.com/" + tiny + "\"" +"       alt=" + tiny + ">" +"    </a>"
}

更改相册图标

然后在主题的_config.yml里面把相册Galleries的图标改为fas fa-photo-video,这才是真正的相册呢。

ok,完成。

hexo matery 相册 视频相册 相册加密 描述备注相关推荐

  1. 制作elasticsearch 镜像_相册视频制作-相册视频制作App下载-

    相册视频制作软件是一款能让你成为视频制作达人的app.相册视频制作软件app虽然看上去视频编辑的功能非常专业但是相册视频制作软件安卓实际操作起来很简单,几分钟就学会了! 软件介绍 相册视频制作软件是一 ...

  2. Android开发之刷新图片到相册 | 刷新视频到相册的方法区分发广播刷新方法

    我们很多app会有保存图片和保存视频,保存成功后一般在最近文件或者相册就能看到了,这个需要我们在保存文件后自行刷新到相册中,以前老版本方法通过广播刷新方法在API29中已经废弃了无法使用,咱们提供了新 ...

  3. iOS 录视频,相册选择视频,视频压缩,存储本地文件,播放,上传

    iOS 录视频,相册选择视频,视频压缩,存储本地文件,播放,上传 工程中用到了这部分的功能,也纠结了几天后做完了,现在总结下这部分的东西. 先说描述下需求: (1)从相册取视频.录视频: (2)视频转 ...

  4. 保存照片和视频到相册显示

    照片和视频保存到本地的方法大致都是通过流的方式写入文件里面就可以达到保存到文件夹的目的,但是你保存到文件夹的资源却不一定能够在相册显示出来,只能翻看文件管理. 怎么能够将保存到本地的照片视频显示在系统 ...

  5. 我做的相册视频,总结07年的生活!

    我做的相册视频,总结07年的生活!                                     幸福就如这路边的野花,如果你有一颗发现美丽的心,你才能发现她的美,才能感受到生活的美好!   ...

  6. 阅读软件怎么添加书源_相册视频制作软件怎么用?怎么添加滤镜?

    最近,我和朋友因为工作出差,顺道在某个旅游城市逗留了几天,开开心心地放松了一回.旅行中,我们拍下了很多沿途的风景.美食.人文等有纪念意义的照片,结束旅行后,想用这些照片制作一个视频分享到朋友圈,该怎么 ...

  7. iOS从相册选择视频和保存视频到相册

    最近,在做有关视频操作的功能.需要从相册选择视频,处理之后再保存到相册. 选择视频: 方式一:用系统的UIImagePickerController 贴代码: - (void)selectAction ...

  8. 用pr做简单的相册视频

    这次做公司年会的相册视频,时间比较紧,就注重了几个点: 1.音乐节奏与照片的切换同步: 开始我想的是匀速播放,后来发现效果很差,就根据音乐的一句一句来断: 2.照片的色调和主题分类: 因为是年会场合, ...

  9. 微信小程序下载视频到相册(带进度条)

    微信小程序下载视频到相册,并带进度条 <button class="desc-note my-button u-font-32" @click="toUpload( ...

  10. 时尚主题快闪视频相册视频案例制作教程(可转载)

    视频,通常都是我们记录记忆的最好方式,但是想要在视频中抓住最美的瞬间,却不是那么容易的事.不过在使用Vegas之后,你就会对视频相册的制作有一个全新的认识.好了,废话不多说,小编今天就教一下大家怎么制 ...

最新文章

  1. 个人信息泄露致电信诈骗猖獗 专家:治理亟须完善立法
  2. codewars-013: Ease the StockBroker
  3. 僵尸网络中区块链的利用方法分析
  4. Java获取近七天的数据条数,及页面实现折线图(附前后端代码)
  5. 大数据分析的5个方面
  6. django的ajax_get请求
  7. 精读《国际化布局 - Logical Properties》
  8. iis网站服务器响应慢,IIS响应慢
  9. 徽柏工业机器人_国产工业机器人龙头企业,是这家徽商!
  10. BZOJ 1406 [AHOI2007]密码箱 数论
  11. c语言计算器变量,支持变量运算的计算器
  12. Web前端开发需要学习哪些知识
  13. 如何使用winrar压缩工具实现:文件打包为自解压EXE类型
  14. 国产软件产品的一点看法
  15. 数据分析 之 渠道质量分析
  16. 十年陌陌,是否能成为Hello
  17. 南昌大学数字电路设计大作业-大药片
  18. 淘宝新手每天要做些什么
  19. SMOJ 2202 怪物 (整体二分+BIT)
  20. 联想计算机入门,入门级首选:联想H420电脑配i3芯评测

热门文章

  1. 程序员,保险公司招聘不要轻易跑过去,省省路费省省时间,别浪费感情,特别是招聘什么业务主管经理的...
  2. hibernate-annotation
  3. 转载 JavaScript的24条实用建议
  4. flash 绘图API:绘制秀曲线图形
  5. 删除整个目录(API)
  6. thinkphp多表查询之join方法
  7. ubuntu 卡死 安装 桌面_Ubuntu下图形界面卡死解决办法
  8. 套料排版代码python_XSuperNEST全自动套料解决方案
  9. 用python编制一个的类_python之面向对象编制之封装
  10. eclipse svn插件安装_eclipse 2020-03 (4.15.0) SVN 插件在线安装教程