prism

Hexo + Next 主题实现全局播放背景音乐

五迷三道 提交于 2020-04-11 17:34:15
欢迎访问我的博客 ,点击蓝色字体即可进入! 第一种方式:使用网易云音乐插件 特点: 简单快捷 有版权保护的音乐无法播放(易造成歌单失效) 我们可以将此插件添加到博客界面,或者博客文章之中(直接粘贴网易云插件代码即可)。 如何获取网易云歌单外链音乐插件及注意事项 在此我们举例将音乐插件添加到侧边栏。 打开我们主题文件: themes\next\layout\_macro\sidebar.swig 找到 sidebar-inner ,将网易云插件代码代码粘贴到此 <div> 标签后即可。 演示: < aside class = "sidebar" > < div class = "sidebar-inner" > //从下面开始复制,粘贴到这里 < ! -- 网易云插件 -- > < iframe frameborder = "no" border = "0" marginwidth = "0" marginheight = "0" width = 330 height = 86 src = "//music.163.com/outchain/player?type=2&id=463352828&auto=0&height=66" > < / iframe > 在博客文件夹打开 GitBash 执行 hexo clean 、 hexo g 、 hexo s ,即可看到效果。 效果图:

浅析嵌入式 JS 模板引擎之EJS

两盒软妹~` 提交于 2020-04-11 17:33:55
EJS是一套既简单又高效的嵌入式 JS模板语言,可以帮我们利用普通的 JS 代码生成 HTML 页面。其历史悠久,曾一度得到些许大佬的青睐,现在虽然没有vue、react这些项目流行,但其还是有一定的使用场合和学习价值的。 EJS后缀名为"ejs" EJS 支持我们把JS代码直接写在标签内 EJS 能够缓存 JS函数的中间代码,使执行速度得到极大的提升 EJS 调错极其简单:因为它所有错误都是普通的 JS 异常,而且也会给我们输出异常发生的具体位置 EJS能够快速编译与绘制输出,并且其标签很简洁,如:<% %> EJS能够自定义分割符,如:用 <? ?> 替换 <% %> EJS同时支持服务器端和浏览器 JS 环境 EJS兼容 Express 视图系统 1. EJS配置 ① 安装 npm i ejs -- save ② 建立views文件夹 ③ 设置模板引擎 app . set ( "view engine" , "ejs" ) ; ④ 设置存放位置,即views文件夹,第一个参数views的意思是在路径前加views(默认会去找项目根目录下的views文件夹) app . set ( "views" , [ path . jion ( __dirname , "./views" ) ] ) ; ⑤ 告诉ejs将html文件作为模板文件来渲染 app . engine (

STL之空间配置器(Allocator)

无人久伴 提交于 2020-04-11 17:30:56
本文以gcc_9.3.0为例 一、介绍 配置器的基本目的是为给定类型提供内存资源以及提供在内存不再需要时将其归还的地方。标准库的内存管理被封装在一个类模板中——allocator。 1.1、设计 C++标准对于该领域只是给出了一些指示,实现这些要求的最简单的方式是调用 operator new 和 operator delete 运算符。相比于有缓存的分配和可以重复利用之前分配的内存,这种方法可能会比较慢。但是这种方法可以在多种硬件和操作系统中正确地工作。 __gnu_cxx::new_allocator 实现了简单的 operator new 和 operator delete 语义,而 __gun_cxx::malloc_allocator 使用C语言的函数 std::malloc 和 std::free 实现了相同的功能。 另一种方法是在配置器类中使用智能来缓存分配。 这种额外的机制可以采用多种形式:位图索引,以2的指数级增长的存储桶的索引,或者更简单的固定大小缓存池。缓存可以在程序中的容器间共享。而且,也不总是调用operator new和operator delete来传递内存,这可以带来速度上的优势。使用这些技术的配置器是 __gnu_cxx::bitmap_allocator , __gun_cxx::mt_alloc ,和 __gun_cxx::pool

CentOS 7.3 下的firewall-cmd命令使用

不想你离开。 提交于 2020-04-11 16:40:51
CentOS 7.3 下的firewall-cmd命令使用 本文是基于CentOS 7.3系统环境,使用firewall-cmd命令 CentOS 7.3 一、防火墙命令firewall-cmd (1) 开启 systemctl start firewall-cmd (2) 停止 systemctl stop firewall-cmd (3) 重启 systemctl restart firewall-cmd (4) 查看所有开启的端口 firewall-cmd --list-ports (5) 开启端口访问 firewall-cmd --zone = public --add-port = 80/tcp --permanent firewall-cmd --reload # 命令含义: # --zone 作用域 # --add-port=80/tcp 添加端口,格式为:端口/通讯协议 # --permanent 永久生效,没有此参数机器重启后失效 (6) 开启端口访问 firewall-cmd --add-service = http --permanent firewall-cmd --reload # 命令含义: # --add-service=http 添加服务 # --permanent 永久生效,没有此参数机器重启后失效 (7) 重新加载防火墙配置 firewall

在Centos7上安装JDK8的步骤

 ̄綄美尐妖づ 提交于 2020-04-11 16:40:19
首先我们需要在官方网站上下载安装包: https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 我下载的是这个版本,因为现在企业中还是JDK8使用的比较多。 下载完毕后把这个文件丢到Centos7服务器上,如果你用的是虚拟机,当然也OK 使用这个安装 rpm -ivh jdk-8u221-linux-x64.rpm 接下来在/etc/profile后面加入这几行东西 JAVA_HOME = /usr/java/jdk1.8.0_241-amd64 CLASSPATH = %JAVA_HOME%/lib:%JAVA_HOME%/jre/lib PATH = $PATH : $JAVA_HOME /bin: $JAVA_HOME /jre/bin export PATH CLASSPATH JAVA_HOME 最后使这个文件生效: source /etc/profile 在敲这个命令: java -verion 出现这个表示成功了! 来源: oschina 链接: https://my.oschina.net/u/4342092/blog/3229243

HDU1003 Max Sum【最大子段和+DP】

主宰稳场 提交于 2020-04-11 16:26:08
Max Sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 350199 Accepted Submission(s): 83372 Problem Description Given a sequence a[1],a[2],a[3]…a[n], your job is to calculate the max sum of a sub-sequence. For example, given (6,-1,5,4,-7), the max sum in this sequence is 6 + (-1) + 5 + 4 = 14. Input The first line of the input contains an integer T(1<=T<=20) which means the number of test cases. Then T lines follow, each line starts with a number N(1<=N<=100000), then N integers followed(all the integers are between -1000 and 1000). Output

JS对象—2.工具函数(Array)

喜你入骨 提交于 2020-04-11 16:23:35
一 . 创建数组 new Array ( ) , 空数组 new Array ( 20 ) , 长度 20 的数组 new Array ( "a" , "b" , "c" ) , 参数形成数组 Array . of ( ) , 空数组 Array . of ( 20 ) , 参数形成数组 Array . from ( 'abc' ) //字符串转数组 Array . from ( array [ , mapFn , thisArg ] ) ; //数组转数组 //示例 var map = { do ( ) { return n * 2 ; } } var a = Array . from ( [ 1 , 2 , 3 ] , function ( n ) { return this . do ( n ) ; } , map ) ; Array . from ( { //属性名为数值并且有length属性的对象转数组 0 : 'a' , 1 : 'b' , length : 2 } ) 二 . 数组方法 1. 原数组改变 ( 1 ) push ( ) 末尾添加 , 返回长度 ( 2 ) pop ( ) 末尾移除 , 返回移除项 ( 3 ) unshift ( ) 开头添加 , 返回长度 ( 4 ) shift ( ) 开头移除 , 返回移除项 ( 5 ) sort ( fun )

JS对象—4.窗口对象(window)

两盒软妹~` 提交于 2020-04-11 16:22:52
window对象 window , self 指向window对象本身 所有全局变量都是window对象的属性 一 . 窗口信息 1. innerHeight 浏览器窗口内容区域高度 2. innerWidth 浏览器窗口内容区域宽度 3. outerHeight 浏览器窗口总高度 4. outerWidth 浏览器窗口总宽度 5. pageXOffset 水平滚动过的像素数 6. pageYOffset 垂直滚动过的像素数 二 . 窗口交互 1. blur ( ) 窗口失去焦点 ( 好像没卵用 ) 2. focus ( ) 窗口获取焦点 ( 好像没卵用 ) 3. open ( < url > ) 打开窗口 4. close ( ) 关闭窗口 ( 有兼容性问题 , 谷歌浏览器只能关闭由js创建的窗口 , 如window . open和a标签 ) 5. stop ( ) 停止载入文档 6. print ( ) 提示用户打印 7. scrollBy ( < x > , < y > ) 相对当前位置滚动 8. scrollTo ( < x > , < y > ) 滚动到指定位置 9. alert ( < msg > ) 提示框 10. confirm ( < msg > ) → < boolean > 确认框 11. prompt ( < msg > , < val > ) → <

JS对象—4.窗口对象(location,screen,history,navigator)

会有一股神秘感。 提交于 2020-04-11 16:22:40
一 . 地址对象 location 1. protocol → < 字符串 > 获取或设置 URL 协议 2. host → < 字符串 > 获取或设置 URL 的主机名和端口 3. hostname → < 字符串 > 获取或设置 URL 主机名 4. port → < 字符串 > 获取或设置 URL 端口 5. pathname → < 字符串 > 获取或设置 URL 路径 6. search → < 字符串 > 获取或设置 URL 查询部分 ( 问号串 ) 7. hash → < 字符串 > 获取或设置 URL 锚部分 ( #号串 ) 8. href → < 字符串 > 获取或设置 URL 地址 //方法 1. assign ( < URL > ) 跳转到指定 URL 2. replace ( < URL ) 清除当前文档并跳转到指定 URL 3. reload ( < URL ) 重写加载当前 URL 4. toString ( ) 返回同href一样 二 . 屏幕对象 screen 1. height 屏幕总高度 2. width 屏幕总宽度 3. availHeight 屏幕可供显示高度 ( 排除菜单栏工具栏 ) 4. availWidth 屏幕可供显示宽度 ( 排除菜单栏工具栏 ) 5. colorDepth 屏幕颜色深度 三 . 浏览历史对象 history 1.

JS对象—2.工具函数(RegExp)

Deadly 提交于 2020-04-11 16:22:13
正则表达式教程 : https : / / blog . csdn . net / h610443955 / article / details / 81079439 一 . 创建和操作 reg = new RegExp ( abc ) ; reg = /abc/ ; 简洁写法 , 效果等同 //字符串方法 "abc" . match ( reg ) / g形式下不捕获括号值 , 没有index和input属性 "abc" . search ( reg ) "abc" . replace ( reg , "x" ) "abc" . split ( reg ) //正则方法 reg . test ( "abc" ) reg . exec ( "abc" ) / g形式下需要同个正则对象每执行一次exec返回一次匹配结果 //正则属性 reg . lastIndex exec的下一个匹配的开始位置 reg . global 是否全局匹配 reg . ignoreCase 是否忽略大小写 reg . multiline 是否多行匹配 reg . source 查看正则表达式 二 . 字符匹配语法 1. 基本 / abc / 包含abc / [ ^ a ] bc / 取反 , 包含 不是a + bc / ( good | nice ) / 分支 , 包含good或者nice / abc /