Hexo NexT主题添加点击爱心效果
1. 创建js文件
在/themes/next/source/js/src下新建文件 clicklove.js
,接着把下面的代码拷贝粘贴到 clicklove.js 文件中。找了很多帖子链接都失效了,但是最终还是让我找到了!
!function(e,t,a){function n(){c(".heart{width: 10px;height: 10px;position: fixed;background: #f00;transform:
rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform:
rotate(45deg);}.heart:after,.heart:before{content: '';width: inherit;height: inherit;background:
inherit;border-radius: 50%;-webkit-border-radius: 50%;-moz-border-radius: 50%;position:
fixed;}.heart:after{top: -5px;}.heart:before{left: -5px;}"),o(),r()}function r(){for(var
e=0;e<d.length;e++)d[e].alpha<=0?(t.body.removeChild(d[e].el),d.splice(e,1)):(d[e].y-
-,d[e].scale+=.004,d[e].alpha-
=.013,d[e].el.style.cssText="left:"+d[e].x+"px;top:"+d[e].y+"px;opacity:"+d[e].alpha+";transform:scale("+d[
e].scale+","+d[e].scale+") rotate(45deg);background:"+d[e].color+";z-
index:99999");requestAnimationFrame(r)}function o(){var t="function"==typeof
e.onclick&&e.onclick;e.onclick=function(e){t&&t(),i(e)}}function i(e){var
a=t.createElement("div");a.className="heart",d.push({el:a,x:e.clientX-5,y:e.clientY-
5,scale:1,alpha:1,color:s()}),t.body.appendChild(a)}function c(e){var
a=t.createElement("style");a.type="text/css";try{a.appendChild(t.createTextNode(e))}catch(t)
{a.styleSheet.cssText=e}t.getElementsByTagName("head")[0].appendChild(a)}function s()
{return"rgb("+~~(255*Math.random())+","+~~(255*Math.random())+","+~~(255*Math.random())+")"}var
d=[];e.requestAnimationFrame=function(){return
e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oReque
stAnimationFrame||e.msRequestAnimationFrame||function(e){setTimeout(e,1e3/60)}}(),n()}
(window,document);
修改_layout.swig
打开\themes\next\layout_layout.swig文件,在末尾(在前面引用会出现找不到的bug) ,引用clicklove.js
<!-- 页面点击小红心 -->
<script type="text/javascript" src="/js/src/clicklove.js"></script>