本文参考自heo及Jayhrn
创建文件
创建themes/butterfly/scripts/helpers/random.js
文件
开启pjax方案
1 2 3 4 5 6 7 8 9 10 11
| hexo.extend.generator.register('random', function (locals) { const config = hexo.config.random || {} const posts = [] for (const post of locals.posts.data) { if (post.random !== false) posts.push(post.path) } return { path: config.path || 'bywind/random.js', data: `var posts=${JSON.stringify(posts)};function toRandomPost(){pjax.loadUrl('/'+posts[Math.floor(Math.random() * posts.length)]);};` } })
|
未开启pjax方案
1 2 3 4 5 6 7 8 9 10 11
| hexo.extend.generator.register('random', function (locals) { const config = hexo.config.random || {} const posts = [] for (const post of locals.posts.data) { if (post.random !== false) posts.push(post.path) } return { path: config.path || 'bywind/random.js', data: `var posts=${JSON.stringify(posts)};function toRandomPost(){window.open('/'+posts[Math.floor(Math.random() * posts.length)],"_self");};` } })
|
添加配置
在主题配置文件的inject的bottom里添加
1
| <script src="/bywind/random.js"></script>
|