基于Hexo-Ocean主题博客搭建

ocean-dark-iterm:基于 base16 Ocean 主题的 iTerm.app 主题 iTerm.app 的海洋主题 这是一个基于并改编自的OS X 的。 关于base16的一点: Base16 提供精心选择的语法高亮和一组适用于各种应用程序的默认十六种颜色。 如果您喜欢这个主题,请务必查看 Atom 和 Sublime Text 的和。 终端应用程序 查看以获取 Terminal.app 版本。 用法 克隆这个 repo。 打开 iTerm,转到Preferences ,然后Profiles 。 选择颜色选项卡,然后打开加载预设下拉菜单并选择导入选项。 导航到.itermcolors文件并打开它。 最后,通过选择新配置文件,单击左下角的其他操作,然后选择设置为默认值,将其设置为默认值。 终端提示 有关自定义终端提示的更多信息,请查看库中的 @mdo 的.bash_profile 。 将其复制并粘贴到您自己的.bash_profile并重新加载 iTerm 或 立即下载

本文主要是Hexo Ocean主题博客搭建过程的记录
博客地址:松林羊

hexo 的基本命令

hexo init [folder] :创建一个存放网站源码的文件夹。
hexo new [layout] <title>:新建一篇文章。layout:默认post,可以是page、draft。title:文章标题,标题包含空格的话,请使用引号括起来。
hexo clean:清除缓存文件db.json和已生成的静态文件public,尤其是更换主题后
hexo g:生成静态html文件
hexo s:启动服务器
hexo d:部署网站
传送门:官方文档

下载主题源码

在hexo init [folder] 的folder目录下执行:

git clone https://github.com/zhwangart/hexo-theme-ocean.git themes/ocean

参照主题文档进行配置

Ocean 中文文档
关于 Ocean 使用中的问题

文章自动添加Read More

将\themes\ocean\layout\_partial\article.ejs文中的<% if (post.excerpt && index){ %>的else部分替换为如下内容:

<% var br = post.content.indexOf('<br>') %>
<% if(br < 0 || !index) { %>
  <%- post.more %>
<% } else { %>
  <%- post.content.substring(0, br) %><br/>
  <% if (theme.excerpt_link) { %>
	<a class="article-more-link" href="<%- url_for(post.path) %>"><%= theme.excerpt_link %></a>
  <% } %>
<% } %>

搜索功能不起作用? or 除开首页不能正常搜索

  1. 本地检索需要安装插件
    npm install hexo-generator-searchdb --save
    
  2. 另外一个问题:插件搜索函数返回的url 地址有问题 ,作者说是因为 “中文字符被URL encode了 ” 。后来我找到一个解决办法:
    将 [folder]/node_modules/hexo-generator-searchdb/templates/xml.ejs 文件中的:
    <url><%- encodeURIComponent(config.root + post.path) %></url>
    
    修改为
    <url><%- encodeURI(config.root + post.path) %></url>
    

修改导航栏

修改 themes/ocean/source/css/_partial/navbar.styl 文件

文章添加封面图片

---
title: Post name
date: 2019-07-24 22:01:03
photos: [
        ["/images/相机.jpg"], // themes/ocean/source/images目录下
        ["https://tuchong.pstatp.com/2716763/f/531173888.jpg"]
  ]
---

在首页只会显示第一张,详情页会按顺序显示这两张

为文章添加Gitalk评论

参考:https://zhwangart.github.io/2018/12/06/Gitalk/

在右上角或者左上角实现fork me on github

选样式:GitHub Corners-1  GitHub Corners-2
然后粘贴刚才复制的代码到themes/ocean/layout/index.ejs文件中,放在<div id=”landingpage”></div>的第一行,并把href改为你的github地址
对样式做出修改:
<div id=“landingpage”> 修改为 <div id=“landingpage” style=“position:relative;”>
复制的<a>标签添加如下样式:style=“position:absolute;left:0;top:100;z-index=1000;”

实现点击出现特效

  1. 点击桃心
    下载:桃心Js
    然后将里面的代码copy一下,新建love.js文件并且将代码复制进去,然后保存。
    在themes/ocean/_config.yml最后一行写入:

    lovejs: true
    

    将love.js文件放到路径/themes/ocean/source/js/src里面,然后打开\themes\ocean\layout\_partial\ after-footer.ejs文件, 在最后一行写入:

    <% if (theme.lovejs){ %>
    	<%- js('/js/love.js') %>
    <% } %> 
    
  2. 爆炸效果
    下载:fireworks.js anime.min.js
    步骤与上面类似保存js到/themes/ocean/source/js/src,最后在\themes\ocean\layout\_partial\ after-footer.ejs文件内容未写入:

    <% if (theme.fireworks){ %>
       <canvas class="fireworks" style="position: fixed;left: 0;top: 0;z-index: 1; pointer-events: none;" ></canvas>
       <%- js('/js/anime.min.js') %>
       <%- js('/js/fireworks.js') %>
    <% } %>
    

头像旋转效果

打开\themes\ocean\layout\_partial\sidebar.ejs,给<div class=logo>下的img加上一个id。然后参考:css + js实现图片不停旋转 鼠标悬停停止旋转
然后将里面的js代码copy到一个my.js文件中(注意替换img的id),保存到/themes/ocean/source/js/src目录。
然后在\themes\ocean\layout\_partial\after-footer.ejs中最后一行写入:

<%- js('/js/my.js') %>

网站底部加上访问量

\themes\ocean\layout\_partial\after-footer.ejs 中默认是导入了统计脚本的(busuanzi-2.3.pure.min.js )

修改访问量统计的样式:
将\themes\ocean\layout\_partial\post\busuanzi.ejs
修改为:

<div class="powered-by">
  <% if (is_home()) { %>
    <span id="busuanzi_container_site_pv">访问量:<span id="busuanzi_value_site_pv"></span></span>
  <%} %>
	&emsp;<i class="fa fa-user-md"></i><span id="busuanzi_container_site_uv">访客数:<span id="busuanzi_value_site_uv"></span></span>&emsp;
  <% if (is_post()) { %>
    <i class="fe fe-bookmark"></i>文章访问量:<span id="busuanzi_value_page_pv"></span>
  <%} %>
</div>

添加网站字数,阅读时间统计

在根目录下运行:

npm install hexo-wordcount –save

在\themes\ocean\_config.yml主题配置文件中加入:

post_wordcount:
  item_text: true
  wordcount: true
  min2read: true
  totalcount: true
  separated_meta: true

在\themes\ocean\layout\_partial\footer.ejs文件中,在<ul class=“list-inline”>标签后加入:

<ul class="list-inline">
	<li>全站共<span class="post-count"><%= totalcount(site) %></span>字</li>
</ul> 

在\themes\ocean\layout\_partial\article.ejs文件中,在

&emsp;<i class="fe fe-bar-chart"></i> <span class="post-count"><%- wordcount(post.content) %></span>字
&emsp;<i class="fe fe-clock"></i> <span class="post-count"><%- min2read(post.content) %></span>分钟

Ocean主题的图标

图标在\themes\ocean\source\css\_feathericon.styl中查找
官网:feathericons

为博客加上萌萌的宠物

hexo-helper-live2d
在网站根目录下执行

npm install -save hexo-helper-live2d
npm install live2d-widget-model-haruto(自己选择的萌宠模型)

在hexo的配置文件中添加:

# 萌宠
 live2d:
  enable: true
  scriptFrom: local
  model:
    use: live2d-widget-model-haruto
    scale: 1
    hHeadPos: 0.5
    vHeadPos: 0.618
  display:
    superSample: 2
    width: 150
    height: 300
    position: left
    hOffset: 0
    vOffset: -20
  mobile:
    show: true
  react:
    opacityDefault: 0.5
    opacityOnHover: 0.2

重启服务:

hexo clean && hexo g && hexo s

添加网站运行时间

<span id="timeDate">载入天数...</span><span id="times">载入时分秒...</span>
<script>
    var now = new Date(); 
    function createtime() { 
        var grt= new Date("04/26/2019 15:49:00");//此处修改你的建站时间或者网站上线时间 
        now.setTime(now.getTime()+250); 
        days = (now - grt ) / 1000 / 60 / 60 / 24; dnum = Math.floor(days); 
        hours = (now - grt ) / 1000 / 60 / 60 - (24 * dnum); hnum = Math.floor(hours); 
        if(String(hnum).length ==1 ){hnum = "0" + hnum;} minutes = (now - grt ) / 1000 /60 - (24 * 60 * dnum) - (60 * hnum); 
        mnum = Math.floor(minutes); if(String(mnum).length ==1 ){mnum = "0" + mnum;} 
        seconds = (now - grt ) / 1000 - (24 * 60 * 60 * dnum) - (60 * 60 * hnum) - (60 * mnum); 
        snum = Math.round(seconds); if(String(snum).length ==1 ){snum = "0" + snum;} 
        document.getElementById("timeDate").innerHTML = "本站已安全运行 "+dnum+" 天 "; 
        document.getElementById("times").innerHTML = hnum + " 小时 " + mnum + " 分 " + snum + " 秒"; 
    } 
	setInterval("createtime()",250);
</script>

将以上代码保存到\themes\ocean\layout\_partial\post\runtime.ejs

在\themes\ocean\layout\_partial\footer.ejs文件中,第一个<ul class=“list-inline”></ul>标签后加入:

<div class="float-right">
      <%- partial('post/runtime') %>
</div>

添加DaoVoice 在线联系

首先在https://account.daocloud.io/signin注册账号
然后点击下方链接
http://dashboard.daovoice.io/get-started?invite_code=0f81ff2f
之后会得到一个app_id

在主题配置文件写入:

# Online contact 
daovoice: true
daovoice_app_id: 这里填你的刚才获得的 app_id

在\themes\ocean\layout\_partial\footer.ejs中,</head>前写入:

<% if (theme.daovoice){ %>
  <script>
  (function(i,s,o,g,r,a,m){i["DaoVoiceObject"]=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;a.charset="utf-8";m.parentNode.insertBefore(a,m)})(window,document,"script",('https:' == document.location.protocol ? 'https:' : 'http:') + "//widget.daovoice.io/widget/0f81ff2f.js","daovoice")
  daovoice('init', {
      app_id: "<%- theme.daovoice_app_id %>"
    });
  daovoice('update');
  </script>
<% } %>

取消文章下面的分享连接,添加本文结束

去掉\themes\ocean\layout\_partial\article.ejs中的以下代码:

<a data-url="<%- post.permalink %>" data-id="<%= post._id %>" class="article-share-link"><%- theme.share_text %></a>

同时还可以添加本文结束 感谢阅读等说明:
如在<%- partial(‘post/tag’) %>下面一行添加:

<% if (!index && is_post()) { %>
	<div style="text-align:center;color: #ccc;font-size:14px;">------------- 本文结束&nbsp;<i class="fe fe-smile"></i>&nbsp;感谢您的阅读 -------------</div>
<% } %>

博文压缩

在根目录下执行:

npm install gulp -g
npm install gulp-minify-css gulp-uglify gulp-htmlmin gulp-htmlclean gulp –save

在根目录下新建gulpfile.js,写入一下内容:

var gulp = require('gulp');
//Plugins模块获取
var minifycss = require('gulp-minify-css');
var uglify = require('gulp-uglify');
var htmlmin = require('gulp-htmlmin');
var htmlclean = require('gulp-htmlclean');
//压缩css
gulp.task('minify-css',
function() {
    return gulp.src('./public/**/*.css').pipe(minifycss()).pipe(gulp.dest('./public'));
});
//压缩html
gulp.task('minify-html',
function() {
    return gulp.src('./public/**/*.html').pipe(htmlclean()).pipe(htmlmin({
        removeComments: true,
        minifyJS: true,
        minifyCSS: true,
        minifyURLs: true,
    }))
    .pipe(gulp.dest('./public'))
});
//压缩js 不压缩min.js
gulp.task('minify-js',
function() {
    return gulp.src(['./public/**/*.js', '!./public/**/*.min.js']).pipe(uglify()).pipe(gulp.dest('./public'));
});

//4.0以前的写法 
//gulp.task('default', [
//  'minify-html', 'minify-css', 'minify-js'
//]);

//4.0以后的写法
// 执行 gulp 命令时执行的任务
//gulp.task('default', gulp.parallel('minify-html', 'minify-css', 'minify-js',
//function() {
    // Do something after a, b, and c are finished.
//	console.log('success')
//}));

gulp.task('default',gulp.series(gulp.parallel('minify-html','minify-css','minify-js')));

生成博文时执行

hexo clean && hexo g && gulp && hexo d 

就会根据 gulpfile.js 中的配置,对 public 目录中的静态资源文件进行压缩。

修改文章封面图片的引入方式,同时支持相对地址与http的图片

将\themes\ocean\layout\_partial\post\gallery.ejs
中的<% if (index){ %>的上一行写入:

<% var idx = url_for(photo).indexOf('http') %>

将文中两处的:

<img src="<%- url_for(photo) %>" itemprop="image">

修改为:

<% if(idx < 0) { %>
	<img src="<%- url_for(post.path)+url_for(photo).substring(1) %>" itemprop="image">
<% } else { %>
	<img src="<%- url_for(photo) %>" itemprop="image">
<% } %>

设置封面图片不在内容详情页展示

将\themes\ocean\layout\_partial\article.ejs
中的

<%- partial('post/gallery') %>

修改为:

<% if (index){ %>
	<%- partial('post/gallery') %>
<% } %>

去掉rss订阅

根目录下执行:

npm uninstall hexo-generator-feed –save

将\themes\ocean\_config.yml文件中修改为:rss: false

导航栏图表改为在文字左侧

修改\themes\ocean\source\css\_partial\navbar.styl

&.nav-main
      .nav-item-link
        &::before, i.fe
          display block
          line-height 1
        &::before
          font-family 'feathericon'

修改为:

&.nav-main
      .nav-item-link
        &::before, i.fe
          // display block
          line-height 1
		   margin-right: 10px;
        &::before
          font-family 'feathericon'

添加readme.md不被渲染

在Hexo目录下的source根目录下添加一个, README.md。
修改Hexo目录下的_config.yml。
将skip_render参数的值设置上。skip_render: README.md
保存退出即可。

首页视屏换成图片

将\themes\ocean\layout\_partial\ocean.ejs中

<video playsinline="" autoplay="" loop="" muted="" data-autoplay=""
   poster="<%- theme.ocean.path %>ocean.png" x5-video-player-type="h5">
  <source src="<%- theme.ocean.path %>ocean.mp4" type="video/mp4">
  <source src="<%- theme.ocean.path %>ocean.ogv" type="video/ogg">
  <source src="<%- theme.ocean.path %>ocean.webm" type="video/webm">
  <p>Your user agent does not support the HTML5 Video element.</p>
</video>

修改为:

<img src="<%- theme.ocean.path %>ocean.png">

去掉首页视频或图片

去掉themes/ocean/layout/index.ejs中的

<%- partial('_partial/ocean') %>

is_home()、is_post() 函数判断不正确

将\themes\ocean\layout\layout.ejs中

<%- partial('_partial/footer', null, {cache: !config.relative_link}) %>

修改为

<%- partial('_partial/footer', null, {cache: config.relative_link}) %>

就是将partial中的cache设置为false。参考:is_home()、is_post() 函数判断不正确

视频 or 图片只在pc端显示,不在移动端显示

修改themes\ocean\source\css_partial\layou.styl文件

// Media Query
@media (min-width: 768px)
  .jumbotron
    margin-bottom 6rem
    display block   //此处为新增。设备宽度大于等于768像素时显示视频or图片

在文件末尾新增

@media (max-width: 768px)
  .jumbotron
    display none  // 设备宽度小于等于768像素时不显示视频or图片

此时会发现移动端左上角有点空旷,则进行如下修改
修改themes\ocean\layout_partial\archive.ejs文件

var title = '';
var mobile_title = "松林羊 Blog";  // 此处为新增
...
<h1 class="page-type-title pc"><%- title %></h1> // 新增类名为pc的样式
<h1 class="page-type-title mobile"><%- mobile_title %></h1> // 此处为新增

修改themes\ocean\source\css_partial\archive.styl文件

.page-type-title
  margin 0
  padding 3rem 0
 // 以下内容为新增
  &.pc
    @media screen and (max-width: 768px)
      display none
    @media screen and (min-width: 768px)
      display block
  &.mobile
    @media screen and (max-width: 768px)
      display block
      font-family 'STXingkai'
    @media screen and (min-width: 768px)
      display none

配置fancybox展示文章图集

在themes\ocean\layout\_partial\after-footer.ejs文件末尾加入如下代码

<% if (is_post()){ %>
<script>
// 使用fancybox来显示post图片集(#andus-head-img为头像id)
$('img:not(#andus-head-img)').each(function() {
  $(this).wrap('<a class="fancybox" data-fancybox="gallery" href="' + $(this).prop("src") + '"></a>'); 
})
</script>
<% } %>

更换评论系统,由gitalk跟换为valine, 并增加邮件通知功能

依次参考
Valine–一款极简的评论系统
Valine
Valine-Admin
在themes/ocean/_config.yml文件中新增以下内容,同时确保gitalk.enable为false

# Valine 不能与gitalk同时开启
valine:
  enable: true
  app_id:  # 这里填写得到的APP ID
  app_key:  # 这里填写得到的APP KEY
  placeholder: 记得留下你的昵称和邮箱...可以快速收到回复ヾノ≧∀≦)o # [v1.0.7 new]留言框占位提示文字
  notify: true # 评论回复邮件提醒 。 第三方支持:https://github.com/zhaojun1998/Valine-Admin
  verify: false # 验证码 。 开启邮件提醒会默认开启验证码选项
  avatar: monsterid # Gravatar头像。可选项:[identicon monsterid  wavatar retro robohash mp ''] ,见 https://valine.js.org/avatar.html
  recordIP: true # 是否记录评论者ip
  visitor: false  # 阅读量统计 https://valine.js.org/visitor.html

拷贝themes\ocean\layout\_partial\post\gitalk.ejs重命名为valine.ejs
全部内容修改为

<% if (theme.valine.enable) { %>
  <div class="comment_headling"  style="margin-top:5rem;">
	<font size="5"><i class="fe fe-comments"></i> 评论</font>
  </div>
  <div class="comment"></div>
  <%- js('https://cdn1.lncld.net/static/js/3.0.4/av-min.js') %>
  <%- js('js/Valine.min.js') %>
  <script type="text/javascript">
  // https://cdnjs.cloudflare.com/ajax/libs/valine/1.3.10/Valine.min.js
  GUEST_INFO = ["nick", "mail", "link"],
  guest_info = "nick,mail,link".split(",").filter(function(i) {
		return - 1 < GUEST_INFO.indexOf(i)
  });
  guest_info = 0 == guest_info.length ? GUEST_INFO: guest_info,
  new Valine({
	 // AV 对象来自上面引入av-min.js
	 av: AV, 
	 el: '.comment',
	 app_id: '<%- theme.valine.app_id %>', 
	 app_key: '<%- theme.valine.app_key %>', 
	 placeholder: '<%- theme.valine.placeholder %>',
	 meta: guest_info,
	 notify: <%- theme.valine.notify %>,
	 verify: <%- theme.valine.verify %>,
	 avatar: '<%- theme.valine.avatar %>',
	 recordIP: <%- theme.valine.recordIP %>,
	 visitor: <%- theme.valine.visitor %>,
	 lang: 'zh-cn'
  });
  </script>
<% } %>

修改themes\ocean\layout\_partial\article.ejs文件

<% if (is_post()) { %>
	<%- partial('post/gitalk') %>
	<%# 下面为新增内容 %>
	<%- partial('post/valine) %>
<%} %>

关闭评论时的验证码,将Valine.min.js保存到themes\ocean\source\js目录下,将其中

u.attr(Q, "style", "display:block;"), t && t.type) {
	var o = u.find(Q, ".vsure");
	u.on("click", o,
	function(n) {
		e.alert.hide(),
		t.cb && t.cb()
	})
}

修改为

u.attr(Q, "style", "display:none;"), t && t.type) {
	e.alert.hide(),
	t.cb && t.cb()
}
记录(自用)

<%- page.content.substring(0,tips) %> 显示html的样式结果
<%= page.content.substring(0,tips) %>显示html源代码

hexo-theme-ocean:Ocean是基于Hexo默认主题景观中功能的支持移动的Hexo主题 海洋 Ocean是基于Hexo默认主题景观中功能的支持移动的Hexo主题。 由于我是设计师,而不是编码员,所以请提出建议! 非常感谢在海洋生产过程中提供的技术支持。 安装 $ git clone https://github.com/zhwangart/hexo-theme-ocean.git themes/ocean 使能够 将_config.yml theme设置修改为ocean theme : ocean 更新 cd themes/ocean git pull 配置 让我知道您是否找不到任何东西。 # Menu menu : Home : / Archives : /archives Gallery : /gallery About : /about Links : /links rss : /atom.xml # Miscellaneous favic 立即下载

相关推荐

《OceanX》播放器 Prv0.33

OceanX采用了与浩海播放器V3.944相同的核心因此主要的引擎更新都是一致的:)OceanX播放器特点:1,随意的页面拖动效果让您的网站和播放器的使用就像桌面程序一样的效果!2,播放器嵌入效果和弹出效果任意选择让你更显各自网站特点3,个性化的变妆系统,让使用任意定制自己喜欢的皮肤效果4,视频窗口拖动完全认你行,无拘无束的使用感受5,结合浩海播放器原有各种功能,可以说让你的网络播放器使用感受达到一个新的高度:) (可能有些夸大但我们就是想这方面努力的:))未来发展:1,结合未来强大的后台管理机制,让OceanX表现更加非同一般2,插件化的发展方向,让播放器的功能选项让你自己作主,喜欢什么安装什么!!3,更加意外惊喜陆续加入中......还希望您多多关注我们的这款新的尽全力打造的呕心力作!!浩海更新历史清单:V1: 提取了《游戏频道》初始版本使用的播放器源代码进行共享并命名为《在线多格式音频播放器》1,包含两个播放器控件(Media Player和Real Player)2,支持本地文件和网络文件的混合式列表播放模式3,支持文件播放中的拖拽功能4,播放列表放入了三循环状态V2: 全面改进了播放器的安装使其的安装和设置更加的人性化更方便的音乐管理(相对于V1而言)《在线多格式音频播放器》V2应当算作我们的一款非常经典的播放器了!!1,简化了安装步骤而且使今后的更新也变的异常的简单2,初始是否音乐播放的设定可由您自行掌握3,初始时随机筛选歌曲播放(此功能同样也可由您自行定义)4,播放列表的全新引入5,改进了音量调节的BUG6,加入了对于没有安装Real Player的用户使用播放器时的友善表现(不做强制安装,播放器完全可以使用)V3: 全面改进了播放器的内部核心程序,更多功能的引入,重新修饰了播放器的界面表现并且重新命名为《浩海在线多格式音频播放器》说明:V3版本是强烈要求安装Real Player播放器后,才可以使用的版本!!1,重新编写的内部核心代码程序 2,所有原先V2版的不足已经得到完全修正 3,拥有了更强大的列表处理能力,在已形成的列表中,使用者还可以进行再编辑!!4,最新加入了URL地址的直接输入功能5,最新放入了功能菜单的设计,让更多功能在不影响版式的情况下大量的加入到播放器中!!6,非常好用的列表召回功能!!让您不小心磨掉的列表再次回来,尽可能减小您的误操作!!7,编辑列表支持了,快捷键的操作方法!!其中用鼠标右键单击列表中选项等同于剪切功能!!用鼠标左键双击等同于粘贴功能!!而且 在编辑播放列表窗口中,完全支持多选(shift—连续多选 ctrl—跳跃多选)而且完全支持多选移动、删除等功能!!!8,运行更加的稳定,原来V2版在不同电脑上运行有时会出现IE非法关闭的错误得到了很好的修复 9,随机播放拥有了更加的随机性 10,全新引入了选段播放功能 11,遇到错误连接或者断链可以自动转到下首播放 12,支持了动态解析地址的播放功能 13,更加漂亮的播放器操作界面 等等!!V3.5: 修正了V3的多处BUG和增添了更加人性化的功能最重要的是,对于没有安装Real Player的用户使用播放器时的友善表现(不做强制安装,播放器完全可以使用)又再次改正回来了:)!!1,修正了V3强制安装Real Player才可使用的不便设定!!没有安装Real Player的用户使用播放器时的友善表现(不做强制安装,播放器完全可以使用)又再次更正回来了!!2,最新加入歌曲地址的加密功能!!来尽最大可能保护您的歌曲地址的不外泄!!3,修正了选段播放无法在某处到歌曲最后的循环播放问题!!4,修正了按钮的三种背景的更换出现延迟的现象(加入了图片的预载功能)5,URL输入窗口增加面向使用用户的制定选择播放控件的功能!!6,更正了URL输入地址完毕后,对一些地址的误判断错误!!7,更正了选择歌曲窗口的列表目录有时闪烁不停的BUG!!8,增加了静音功能!!9,列表的三循环状态加入了状态说明:)V3.5.1: 修正了V3.5中的一个关于Media Player版本低于9.0会出现的错误!!!V3.8: 技术尝试,本次V3.8全新尝试“语言/布局/功能”三模块分离的制作理念!!让播放器转化成其他语言版本更加简单易行!并且全面降低了为播放器制作皮肤的技术难度!希望大家在播放器发行后,多提这方面的使用意见以便让我们在这方面的技术更加成熟!另外,因此技术理念是我们第一次大胆尝试,难免有些欠妥和不便的地方,还请大家谅解!!谢谢!!1,播放器全新增加到三大播放引擎,让多格式名副其实!!(Media/Real/Flash)2,突破音频限制,视频窗口最新加入!!而且视频窗口拥有四种模式调节,并且还完全支持您的任意拖拽和锁定来改变视频窗口的大小!!3,全面整合了“打开/追加读取本地和网络媒体”的窗口界面,并且还增加了改名功能!!4,网络歌曲选择窗口最新加入人性化功能“搜索”功能!并且还可进行多文件搜索,连同支持通配符模式!!5,改进了播放Real文件时,状态信息显示有时出现不正确的停滞现象!!6,在线编辑列表加入“改名”功能,让你临时加入的歌曲也可以随心所欲的改变名称!!7,功能菜单最新加入刷新播放器的功能!!8,改进了播放列表下拉菜单的长度有时因添加内容名称过长导致名称的遮挡现象,这次播放列表可以根据添加内容的名称自动伸缩长度,但有最大值的限制,不是无限变长!9,彻底的修正了由于Realone的插件不稳定性,导致运行播放器的停止响应和非法关闭错误!!如果遇到加载控件失败,则系统会自动提醒你采取相应的办法!关闭播放器和继续使用播放器但此控件的文件播放会自动跳过!!10,增加了快捷按钮自定义排序功能,让你使用快捷按钮更加得顺手和自在!!11,增加了初始化自动从网络歌曲选单列表中随机抽取自定义数目的歌曲组成初始播放列表进行播放,彻底改变了人为定义初始播放列表的死板!而且您可以任意选择采用哪种初始列表方法!!12,新增加播放器的隐藏功能!!让你紧张的可视范围得到最大使用!!13,新增加播放器关闭功能!!让喜欢安静的人也能够与“浩海”同处!!14,播放器面板的快捷按钮采用翻页设定,让14个快捷按钮对折显示!!有效地解决了面板面积使用紧张的情况!!15,新增加读取本地文件中读取局域网中其他计算机媒体文件进行播放的完好支持!!16,新增设置在初始时播放器的状态,是否处于隐藏和关闭!!17,注意:由于本次V3.8改动有些超大,因此导致了源data.js文件和V3.8使用的有些小区别,如果您想在V3.8中继续使用您V3.5.1及其以下版本的data.js文件,请在这个文件的最下面加入 “DATALOADEND();” 引号所引的这条语句(语句不包括引号在内,注意大小写)谢谢!!由此给您带来的不便还请见谅!!!18,优化了V3.5.1内核程序,让V3.8表现更加突出!!!(此项为V3.8测试版和V3.8正式版最本质的区别)19,全新加入版权保护机制并提供了人性化的提示功能!!20,最后还修正了一些小错误!!希望大家多多支持!!V3.8.1: 利用JS脚本语言解决了Media控件不支持相对路径写法的Bug!V3.8.3: 进行了全方位了功能完善工作!1,修正了网络歌曲选单在搜索关键字的时候,不加入*时搜索出现不正确的严重BUG!2,关闭播放器功能加入了,询问窗体来尽可能减少你的误操作!3,最新加入窗口历史选单来恢复您自己调节的窗口大小之间的切换功能(历史共设定5次)!V3.8.4: 全面修正窗口打开滞后的严重问题!1,修正了“打开/追加文件”和“快捷按钮编辑”对话框在网络上有时无法打开的严重滞后错误!2,最新加入刷新网站页面的功能! V3.9: 全面雄心取代V3.8系列的作品,全新加入诸多功能,让浩海网络播放器功能再攀新高!1,重新设计崭新界面,让V3.9的出场更添新鲜感!2,全新增加图片格式文件支持(*.bmp;*.jpg;*.gif;*.jpge;*.png 等)为V4.0播放器抛下伏笔3,全面解决V3.8系列播放器左上角在有些系统上出现视频窗口的严重BUG!4,全新的版权保护机制!彻底改善V3.8系列保护机制影响用户美化的诸多不便!让播放器打造更符合您的网站5,全面解决弹出窗口速度慢这个十分让人头痛的问题!此版本全新整合了弹出窗口到播放器内部,让播放器更具有意想不到的表现!!关于喜欢老样式的用户我们也通过选单让您随意在新旧窗口出现样式上来回切换!!6,同步歌词功能全新加入,让字体随着歌曲变色,等同把KTV搬到了您的网站上,让您的用户更添惊喜!!(全面支持LRC和SMI两种歌词文件)7,真全屏功能全新加入,在保留原窗口内部全屏功能不减的基础上,全新加入整个屏幕的全屏功能!!8,列表保存功能姗姗到来!!全面解决了用户自定义完播放列表在退出时无法保留,下次进入还要再次选取的麻烦!9,视频窗口和歌词展示区摆放更加自由,变量一定义,上下随便选!10,全新引入面向网站管理员的分类和播放器使用用户的歌曲分类功能!让站长和用户管理自己的歌曲更加有条理!11,全面新加有媒体文件类型支持视频窗口自动或手动出现的功能!!12,全新增加了ExoBUD MP(II)播放器的数据平稳转移到浩海播放器的实用工具!!13,新加入更为复杂的初始列表的制作,即一部分随机一部分顺序的综合设定能力!!14,全面更正了默认不打开播放器时,默认列表不导入的设定!!15,全新的幻灯片功能!!让幻灯片出现在您的网站不是梦!!(连续的图片设定利用时间设定即可实现此功能)16,全新加入添加歌曲的hta实用工具,手写添加歌曲代码已成为历史!17,图片文件支持,并新增加自动缩放功能让看图片成为一种享受!18,最新加入歌曲切换后的右下角气泡提示功能!!出现时间可由您自行定义(要求客户IE为5.5版本)19,播放器用户可以添加音频视频选项,当播放器设定成允许自由伸缩的时候出现此选项!!20,全新的播放器后台程序!!让播放器添加歌曲更加自由自在!!21,播放媒体时间支持正序或倒序显示,在时间处双击进行切换22,可由站长设定功能按钮的初始顺序23,修正歌曲地址断链反复重试时,停止按钮无效的BUGV3.91: 1,各播放控件可以选择启用不启用。初步解决播放控件全部启用,占用资源较大的问题!2,LRC歌词再次升级,LRC歌词变色改为以像素为单位,告别一字一跳的时代。普通LRC歌词也可均速变色!3,去掉了一些Bug!V3.92:1,修正了整个V3.9系列的一个严重BUG!在播放DAT文件的时候出现无视频错误!2,修正解决Flash写入相对地址会有时出现错误的问题!3,新加入更换网站页面功能!!并由站长设定是否启用该功能!V3.93:1,加载LRC歌词的方法最新加入XMLHTTP的读入方式,来尽可能兼容Win2003无法读入歌词的BUG!2,彻底改观了浩海播放器在按钮切换样式上的不及时状况!3,解决IE安全方面上升导致播放器不正常的情况,例如滤镜的采用等,此版本默认关闭了这些效果,如果用户需要还可以进行设置打开!4,图片播放加入随机23种变换效果的显示,此功能可根据用户需要自行设定是否需要开启!5,把原来播放器封装的htc全部改用js类重新改写,保证安全问题的解决!6,取消了XML作为语言封装的文件,此版全部改成了js文件封装来提高播放器效率!7,最新加入CSS.JS的设置文件,来方便设定播放器的一些样式表现上的系统设置,例如新的按钮切换采用的技术,如果要制作皮肤就需要改动这的数值!8,修正了更换网站页面功能的一个严重BUG!V3.94:1,解决了浏览器插件(例如:3721)把播放器的滑动条误认为浮动广告,让播放器产生严重变形的问题!(用户需要进行相关设置)2,新加入嵌入到用户网站页面的网络选歌单页面,方便用户网站内容和播放器进行互动!(player/userselect.htm)3,如果用户想定义更加个性化的网站上选单页面和播放器产生互动我们也同样定义了接口函数方便大家调用!4,针对播放器使用者在分类下拉单中新加入“召回上次列表”功能选单,方便用户选择!5,解决了视频窗口放在播放器上面,在进行刷新出现的严重BUG问题!6,另外,还修正了一些细小部分V3.941:1,最新加入单独调用播放器的self_run.htm页面V3.943:1,全面修整LRC歌词显示采用XMLHTTP协议的重大BUG!2,真正解决Win2003服务器不能显示LRC歌词的问题!!注:您的LRC歌词的扩展名要全面采用TXT作为扩展名不能使用LRC作为扩展名!!V3.944:1,全面修正整合了用户页面和播放器产生互动的接口函数,让两者互动更加紧密!

hexo theme ocean 优化 の 实记

Hexo博客优化

爱学习的卡比兽 846

工业互联网工控安全与工业质检AI大模型建设方案.pptx

工业互联网工控安全与工业质检AI大模型建设方案.pptx

Hyperocean 主题使用教程

Hyperocean 主题使用教程 1、项目介绍 Hyperocean 是一个为 Hyper 终端设计的深海蓝色主题。Hyper 是一个基于 Web 技术的终端,而 Hyperocean 为其提供了一个深邃且优雅的蓝色主题,使得终端界面更加美观和舒适。 2、项目快速启动 安装 Hyper 首先,确保你已经在系统中安装了 Hyper。如果没有安装,可以从 Hyper 官方网站 下载并安装。 安装 H...

gitblog_00543的博客 801

Doorbell机制在PCI与MSI中断中的高效应用

本文深入解析了Doorbell机制在PCIe设备与CPU间通信中的核心作用。作为一种高效的硬件通知机制,它通过内存映射I/O(MMIO)实现软件对硬件的轻量级触发,常与MSI中断协同工作,构建高效的生产者-消费者模型。文章以AMD GPU的Ring Buffer命令提交为例,阐述了该机制如何显著降低CPU开销、提升系统吞吐量,并对比了其与传统中断方式的性能优势。

ee345的博客 607

手把手教你用示波器抓取MIPI D-PHY波形:从LP11到HS Burst的完整信号解析

本文详细介绍了使用示波器精准捕获MIPI D-PHY信号的关键技巧,包括探头选择、示波器参数设置、信号状态解析及高级触发配置。通过实战案例和波形分析,帮助工程师快速识别从LP11到HS Burst的各种信号状态,解决常见的信号完整性问题,提升调试效率。

weixin_30471561的博客 559

Laravel-Admin负载均衡配置:10分钟搞定高并发场景应对策略

在当今互联网应用中,高并发访问已成为常态,如何让Laravel-Admin后台管理系统在负载均衡环境下稳定运行,是每个开发者必须面对的技术挑战。本文将为您详细介绍Laravel-Admin在负载均衡架构下的完整配置方案,帮助您轻松应对百万级并发访问压力。 ## 🚀 为什么需要负载均衡配置? 当您的业务快速增长,单台服务器已无法承载用户访问压力时,负载均衡配置就成为关键解决方案。通过多台服务器

gitblog_01053的博客 547

三相SST固态变压器详细设计案例

本案例针对400kVA、30kHz三相固态变压器(SST)开展详细设计,核心采用输入串联输出并联(ISOP)拓扑架构(模块化多电平矩阵变换器M3C简化版),重点完成高频变压器的参数计算、绕组设计、损耗分析及液冷温升验证,同时覆盖系统级架构设计、半导体损耗估算及整机效率优化,全流程基于当前电力电子技术可行性展开。

qq_32103755的博客 3284

Hexo博客搭建

一、环境搭建 1.1 安装Node.js (略) 检查安装情况。 muyijundeMacBook-Air:workspace_github yangjun$ node -v v8.4.0 muyijundeMacBook-Air:workspace_github yangjun$ npm -v 5.3.0 muyijundeMacBook-Air:workspace_github yangjun$ 1.2 安装hexo hexo是基于node.js的静态博客,node.js自带的NPM需要翻墙,使用淘.

桔子汽水蓝莓味 271

OBYC自动科目确定整理

WGI是用来重估发货的,通过比较发货时的价格和最新计算的价格,以此将所有差异过账到分配给此事务码的总账科目。是工厂还是公司,一般项目中都是使用工厂,使用工厂的意思就是物料在每个工厂下有一个价格,如果使用公司,则一个公司下的所有工厂都使用一个价格。如果该物料用的是移动平均价,那么该库存依然还存在的情况下,这个价格差异会过账到存货科目上而不会过账到存货的价格差异科目上。用于确定存货评估过账的存货冲抵科目。事务码WGR是用来重估工厂收货的,根据 计算出来的价格差异,把库存的调整过账分配给这个事务码中的总账科目。

nopicture的博客 348

2023年12月机器人技术等级考试试卷(三级理论) 试题解析

2023年12月机器人技术等级考试试卷(三级理论) 试题解析

http://www.cierobot.com 4095

Hexo主题themes/主题文件夹 无法提交到自己Git的原因以及解决办法

也是从仓库里拉取下来的 他关联到了作者的git仓库 所以提交不上去。这样就可以在任意电脑clone文件,就可以发布你的博客文章了;只要删除对应主题文件夹的。

ZH 571

不提交也不释放的事务,数据库连接还有可能被复用

摘要 实验发现Spring事务管理下,未提交事务的数据库连接池连接仍可被复用,这与传统认知相悖。通过配置HikariCP连接池(最大2连接)并设计测试接口,观察到未提交事务的连接会被后续请求复用。这可能导致GTID错误(当MySQL开启GTID且混用事务/非事务表时)以及数据修改丢失问题。研究揭示了Spring事务管理机制与连接池交互的特殊行为,对高并发系统设计具有重要启示。

蔡定努 173

hexo放置统计代码

文章以默认主题landspace为例,计划将统计代码放在页面下方。1,编辑主题目录下layout/_partial/footer.ejs文件。2,在</footer>前适当位置插入统计代码。3,保存并重新发布。hexo clean && hexo generate && hexo deploy本文链接地址: hexo放置统计代码...

奇怪的老司机 195

Scrapy爬虫之热门网站数据爬取--------第2关

第2关:小说网站玄幻分类第一页小说爬取 任务描述 本关任务:爬目标网页的3本小说保存到本地MySQL数据库,目标网页为全书网玄幻分类首页。 注:考虑到单机(非分布式)爬虫的爬取时间和测试平台的压力,我们不爬更多页数的小说了,可以作为课下作业自己完善。 xpath匹配:循环获取相同标签下的内容 通过网页分析,我们在获取小说的章节名时,发现他们都在标签<DIV class="clearfix dirconone">下的li的a中: 这时,我们可以先把其中所有的li标签先获取到: titles = r

weixin_44949187的博客 2835

R语言深度学习实战:基于YOLO的目标检测

目标检测是计算机视觉领域的一项任务,旨在识别图像或视频中的物体,并确定它们的位置。与图像分类不同,目标检测要求模型能够识别多个物体,并为每个物体提供边界框(bounding box)的位置信息。这种任务在众多应用中都具有重要价值,例如自动驾驶、安防监控、物体跟踪等。YOLO(You Only Look Once)是一种非常流行的目标检测算法,它在速度和准确性之间取得了良好的平衡。与传统的目标检测方法不同,YOLO将目标检测任务视为回归问题,直接从输入图像中预测目标的类别和位置信息。

YOLO 330

xmake构建日志分析终极指南:10个高级技巧快速定位构建问题

**xmake构建日志分析**是每个C/C++开发者必备的技能!无论你是新手还是经验丰富的开发者,在项目构建过程中遇到问题时,**xmake构建日志**都能为你提供关键的调试线索。作为一款基于Lua的跨平台构建工具,xmake不仅构建速度快,还提供了强大的**日志分析功能**,帮助开发者快速定位和解决构建问题。 ## 📊 为什么xmake构建日志分析如此重要? 在复杂的C/C++项目中,构建

gitblog_00812的博客 425

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

LZ4动态库制作终极指南:Windows DLL与Linux SO完整教程

LZ4是一款极速的无损压缩算法,提供超过500 MB/s的压缩速度,特别适合需要高速压缩的应用场景。无论是Windows平台的DLL还是Linux平台的SO动态库,LZ4都能提供卓越的性能表现。本文将为您详细介绍如何在两大主流操作系统上制作LZ4动态库,让您轻松掌握跨平台编译技巧!🚀 ## 🔧 Windows DLL动态库制作 ### 使用MinGW+MSYS创建DLL 制作Window

gitblog_00028的博客 659

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

使用Hexo搭建个人博客网站-05-个人网站更换Hexo主题

官方网址:https://hexo.io/themes/ 二、挑选我们喜欢的主题 可以看到有很多主题给我们选,我们只要选择喜欢的主题点击进去,然后进入到它的github地址,我们只要把这个地址复制下来(例如我是选择:hexo-theme-next这个主题) 三、克隆主题 再打开Hexo文件夹下的themes目录(F:\Blog\hexo\themes),右键Git Bash,在命令行输入: git...

拿破仑940911 5810

Hexo的常用指令合集

Hexo:一个基于Node.js的静态网页生成器,常将它与Github Page搭配使用,创建个人博客网站。 hexo有许多主题,其实最火爆的是NexT、Matery等,复制关键词到GitHub或者baidu都能搜到。权衡利弊最终我还是选择了大多数人使用的next。 (1)hexo g或hexo generate 该命令执行后在hexo站点根目录下生成public文件夹 (2)hexo clean 把(1)中的public文件夹删除 (3)hexo s或hexo server 启动服务,默认地址为ht.

gznc_pcc的博客 6917

使用Hexo搭建个人博客网站-03-创建并测试本地Hexo仓库

一、选择路径 在电脑上任意选择一个自己觉得合适的位置,用来存放本地 Hexo 仓库。 我这里就选择电脑 D 盘根目录作为存放路径。 二、确定名称 我们还需要取个名称,用来存放本地 Hexo 仓库,按理说这个名称也是可以用户自己任意起的。 这里我就取为 oceanwang。 三、创建仓库 根据前面选择的存放路径,首先进入计算机 D 盘,然后右击 Git Bash Here,打开命令窗口。在 Git ...

拿破仑940911 1121

Hexo学习笔记

一、介绍1.Hexo is A fast, simple &amp; powerful blog framework. You write posts in Markdown (or other languages) and Hexo generates static files with a beautiful theme in seconds.二、工程文件介绍1、Hexo生成的工程文件目录如下...

天道酬勤 698

Ocean 调度框架

前言 MySQL、Redis、Memcache、Grafana等等抽象为了PAAS平台ocean的服务组件。 ocean平台作为小米公司级PAAS平台,目前正在做的事情和后续的一些规划,这里简单列几个: CI/CD、故障注入、故障自愈、容量测试等等。 目前ocean平台已支持IDC和多云环境,此次分享只介绍IDC内的实践。 ocean平台因启动的比较早,当时k8s还没有release版本...

u013560925的博客 1366

Hexo添加小部件(Butterfly主题) Hexo哔哩哔哩番剧页面插件

安装 npm install hexo-bilibili-bangumi --save 更新 npm install hexo-bilibili-bangumi --update --save 配置 将下面的配置写入站点的配置文件_config.yml里 (不是主题的配置文件)。 bangumi: enable: true vmid: title: '追番列表' quote...

超逸の学习技术博客 4637

一零七七、将Hexo cl && Hexo g && Hexo s通过systemctl命令管理

将Hexo cl && Hexo g && Hexo s通过systemctl命令管理

1054
上一篇: Dockerfile使用-集成JAVA Python Redis Tomcat Nginx镜像,Based on Ubuntu18.04
下一篇: SpringBoot应用部署到Glassfish上(dev环境)
松林羊
博客等级 码龄11年 43粉丝 58原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值