volantis-x / hexo-theme-volantis

A Wonderful Theme for Hexo.
https://volantis.js.org
MIT License
2.05k stars 599 forks source link

右键菜单:音乐未播放时默认不显示音乐控制器;音乐播放时,分割线丢失。 #673

Closed MiroKaku closed 3 years ago

MiroKaku commented 3 years ago

自检报告

第一步:查阅文档

第二步:测试原生代码

打开终端,执行下面的命令:

git clone https://github.com/volantis-x/demo.git && cd demo && npm i && hexo s

结果是否能够正常运行?

测试结果是:A or B

问题描述

问题:自定义右键菜单,音乐不播放时,默认不显示音乐控制器。音乐播放时,菜单项与音乐控制器之间的分割线丢失。

期望:1. 如果右键菜单有设置 music,则默认显示音乐控制器。2. 分割线正常

问题1代码位置(问题2不知道在哪里): rightMenu.js#L248

环境信息

主题版本

您当前使用的版本为:Volantis 5.0.0-rc.1

复现地址

截图

相关截图 复现地址:[https://mirokaku.github.io/blog/](https://mirokaku.github.io/blog/)

浏览器、操作系统

Microsoft Edge 版本 94.0.992.31 (官方内部版本) (64 位)

配置文件

配置文件 #### 站点配置文件 在这里粘贴 `blog/_config.yml` 中修改过的部分 ```yml ``` #### 主题配置文件 在这里粘贴 `themes/volantis/_config.yml` 中修改过的部分 ```yml # APlayer is only available in mainland China. # APlayer config: https://github.com/metowolf/MetingJS aplayer: enable: true js: aplayer: https://cdn.jsdelivr.net/gh/volantis-x/cdn-volantis@master/js/APlayer.mini.js # aplayer@1.10 魔改: 将触摸和滚轮事件监听器标记为 `passive`,以提高页面的滚动性能 meting: https://cdn.jsdelivr.net/npm/meting@2.0/dist/Meting.min.js # Required server: netease # netease, tencent, kugou, xiami, baidu type: playlist # song, playlist, album, search, artist id: 146565302 # song id / playlist id / album id / search keyword # Optional fixed: false # enable fixed mode theme: '#1BCDFC' # main color autoplay: false # audio autoplay order: list # player play order, values: 'list', 'random' loop: all # player loop play, values: 'all', 'one', 'none' volume: 0.7 # default volume, notice that player will remember user setting, default volume will not work after user set volume themselves list_max_height: 320px # list max height list_folded: true ############################### Rightmenu ############################### > start # 自定义右键菜单 rightmenu: enable: true faicon: fa # 公共图标类型 fa fal fas fad # hr: 分割线, music: 音乐控制器 layout: [home, hr, print, darkmode, reading, hr, music] ### 可选功能项 ### print: # 只有文章页才允许自定义打印 name: 打印页面 icon: fa fa-print defaultStyles: true # 是否使用预制的打印样式 # js: # 自定义 js ,可用于修饰打印样式~, 右键剔除了对 Jquery 的依赖,所以此处你只能使用原生 js # - document.querySelector('article#comments').remove() # 移除评论 darkmode: # 需开启 plugins.darkmodejs name: 开灯/关灯 icon: fa fa-moon reading: name: 阅读模式 icon: fa fa-book-open customPicUrl: # 右键的图片复制:只有 Chrome 支持,且只支持 PNG 格式的图片。 enable: false # 如果使用了对象存储且开启了自适应 Webp,那么可以提供额外的链接用以替换图片的访问地址 old: #https://static.inkss.cn/img/article/ new: #https://cdn.jsdelivr.net/gh/inkss/inkss-cdn@master/img/article/ ### 自定义菜单 ### ``` #### node.js & npm 在这里粘贴 `node -v && npm -v` 输出的信息 ``` ▶ node -v v14.17.6 ▶ npm -v 6.14.15 ``` #### package.json 在这里粘贴 `npm ls --depth 0` 输出的信息 ``` ▶ npm ls --depth 0 hexo-site@0.0.0 D:\VHDX\博客系统\Hexo +-- hexo@5.4.0 +-- hexo-deployer-git@3.0.0 +-- hexo-generator-archive@1.0.0 +-- hexo-generator-category@1.0.0 +-- hexo-generator-index@2.0.0 +-- hexo-generator-json-content@4.2.3 +-- hexo-generator-tag@1.0.0 +-- hexo-renderer-ejs@1.0.0 +-- hexo-renderer-marked@4.1.0 +-- hexo-renderer-stylus@2.0.1 +-- hexo-server@2.0.0 +-- hexo-theme-volantis@5.0.0-rc.1 `-- hexo-wordcount@6.0.1 ```
MHuiG commented 3 years ago

这些看起来像是 @inkss 故意设计的,这些设计与之前版本不太相同。

inkss commented 3 years ago

目前,右键音乐播放器监听的是页面中与 theme.plugins.aplayer.id 相同 ID 的首个播放器,暂时设定为音乐播放时才启用右键里的控制器,此举为了减少可能的错误;

另一方面,对于功能类的操作,为了减少右键菜单的长度,在触发诸如 新标签打开链接/图片复制图片播放音乐 等操作时,隐藏所有 class 为 menuLoad-Content 的项(一般为用户自行添加的自定义菜单),当然也包括了分割线。也就是你说的 音乐播放时,分割线丢失

https://github.com/volantis-x/hexo-theme-volantis/blob/1f54daa055281b62fdbd8971e2a703860b29e308/layout/_plugins/rightmenu/layout.ejs#L64-L66

MiroKaku commented 3 years ago

原来是故意这样设计的。 还是期望能够由配置文件控制行为。

github-actions[bot] commented 3 years ago

:wave: Hello, This bug has been fixed, please update your volantis.

:wave: 您好, 此 BUG 已经被修复,请更新您的 Volantis 版本。

MiroKaku commented 3 years ago

哇,非常感谢