1<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><title>å ³äºæ | IMAGINE</title><meta name="keywords" content="IMAGINE,Html,Css,JavaScript,Vue,React,NodeJs,Hexo,Butterfly"><meta name="author" content="Peng"><meta name="copyright" content="Peng"><meta name="format-detection" content="telephone=no"><meta name="theme-color" content="#ffffff"><meta name="description" content="helloï¼æ¬äºº web å端å¼å䏿ãä»äºå¼åå·¥ä½ä¸¤å¹´å¤ï¼å¹³æ¶çè¡·äºææ¯ï¼å¶å°ä¹ç©ç©æ¸¸æã ð åºæ¬ä¿¡æ¯èä¸ ð»ï¼web åç«¯åæ ðï¼NanChangç±å¥½ ðï¼æ¸¸æãçµåãé³ä¹ ðª æçåé¾ä¿¡æ¯1234- name: imagine&#x27;s blog link: http://www.imagineblog.host/ avatar: https://z3.ax"> 2<meta property="og:type" content="website"> 3<meta property="og:title" content="å ³äºæ"> 4<meta property="og:url" content="http://imagineblog.host/about/index.html"> 5<meta property="og:site_name" content="IMAGINE"> 6<meta property="og:description" content="helloï¼æ¬äºº web å端å¼å䏿ãä»äºå¼åå·¥ä½ä¸¤å¹´å¤ï¼å¹³æ¶çè¡·äºææ¯ï¼å¶å°ä¹ç©ç©æ¸¸æã ð åºæ¬ä¿¡æ¯èä¸ ð»ï¼web åç«¯åæ ðï¼NanChangç±å¥½ ðï¼æ¸¸æãçµåãé³ä¹ ðª æçåé¾ä¿¡æ¯1234- name: imagine&#x27;s blog link: http://www.imagineblog.host/ avatar: https://z3.ax"> 7<meta property="og:locale" content="zh_CN"> 8<meta property="og:image" content="http://imagineblog.host/img/banner/02.jpg"> 9<meta property="article:published_time" content="2021-07-21T03:18:01.000Z"> 10<meta property="article:modified_time" content="2022-08-31T08:04:19.377Z"> 11<meta property="article:author" content="Peng"> 12<meta property="article:tag" content="IMAGINE,Html,Css,JavaScript,Vue,React,NodeJs,Hexo,Butterfly"> 13<meta name="twitter:card" content="summary"> 14<meta name="twitter:image" content="http://imagineblog.host/img/banner/02.jpg"><link rel="shortcut icon" href="https://lovelijunyi.gitee.io/img/avatar.gif"><link rel="canonical" href="http://imagineblog.host/about/"><link rel="preconnect" href="//cdn.jsdelivr.net"/><link rel="preconnect" href="//hm.baidu.com"/><link rel="preconnect" href="//fonts.googleapis.com" crossorigin=""/><link rel="preconnect" href="//busuanzi.ibruce.info"/><meta name="google-site-verification" content="oUu4V6mTgP_CWLbYPUuUK0dzxO1r5vMPXCM6QXwiOv8"/><meta name="baidu-site-verification" content="code-mOtCM04zOU"/><link rel="stylesheet" href="/css/index.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free/css/all.min.css" media="print" onload="this.media='all'"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/node-snackbar/dist/snackbar.min.css" media="print" onload="this.media='all'">
14<script>var _hmt = _hmt || []; 15(function() { 16 var hm = document.createElement("script"); 17 hm.src = "https://hm.baidu.com/hm.js?6ede5b235a26f80d0b78937205b49f6f"; 18 var s = document.getElementsByTagName("script")[0]; 19 s.parentNode.insertBefore(hm, s); 20})(); 21</script>
21<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Titillium+Web&display=swap" media="print" onload="this.media='all'">
21<script>const GLOBAL_CONFIG = { 22 root: '/', 23 algolia: undefined, 24 localSearch: {"path":"search.xml","languages":{"hits_empty":"æ¾ä¸å°æ¨æ¥è¯¢çå 容ï¼${query}"}}, 25 translate: undefined, 26 noticeOutdate: undefined, 27 highlight: {"plugin":"highlighjs","highlightCopy":true,"highlightLang":true,"highlightHeightLimit":200}, 28 copy: { 29 success: 'å¤å¶æå', 30 error: 'å¤å¶é误', 31 noSupport: 'æµè§å¨ä¸æ¯æ' 32 }, 33 relativeDate: { 34 homepage: false, 35 post: false 36 }, 37 runtime: '', 38 date_suffix: { 39 just: 'åå', 40 min: 'åéå', 41 hour: 'å°æ¶å', 42 day: '天å', 43 month: '个æå' 44 }, 45 copyright: {"limitCount":50,"languages":{"author":"ä½è : Peng","link":"龿¥: ","source":"æ¥æº: IMAGINE","info":"è使å½ä½è ææãåä¸è½¬è½½è¯·èç³»ä½è è·å¾ææï¼éåä¸è½¬è½½è¯·æ³¨æåºå¤ã"}}, 46 lightbox: 'mediumZoom', 47 Snackbar: {"chs_to_cht":"ä½ å·²åæ¢ä¸ºç¹ä½","cht_to_chs":"ä½ å·²åæ¢ä¸ºç®ä½","day_to_night":"ä½ å·²åæ¢ä¸ºæ·±è²æ¨¡å¼","night_to_day":"ä½ å·²åæ¢ä¸ºæµ è²æ¨¡å¼","bgLight":"#00c4b6","bgDark":"#121212","position":"top-right"}, 48 source: { 49 jQuery: 'https://cdn.jsdelivr.net/npm/jquery@latest/dist/jquery.min.js', 50 justifiedGallery: { 51 js: 'https://cdn.jsdelivr.net/npm/justifiedGallery/dist/js/jquery.justifiedGallery.min.js', 52 css: 'https://cdn.jsdelivr.net/npm/justifiedGallery/dist/css/justifiedGallery.min.css' 53 }, 54 fancybox: { 55 js: 'https://cdn.jsdelivr.net/npm/@fancyapps/fancybox@latest/dist/jquery.fancybox.min.js', 56 css: 'https://cdn.jsdelivr.net/npm/@fancyapps/fancybox@latest/dist/jquery.fancybox.min.css' 57 } 58 }, 59 isPhotoFigcaption: true, 60 islazyload: true, 61 isanchor: true 62}</script>
62<script id="config-diff">var GLOBAL_CONFIG_SITE = { 63 isPost: false, 64 isHome: false, 65 isHighlightShrink: false, 66 isToc: false, 67 postUpdate: '2022-08-31 16:04:19' 68}</script>
68<noscript><style type="text/css"> 69 #nav { 70 opacity: 1 71 } 72 .justified-gallery img { 73 opacity: 1 74 } 75 76 #recent-posts time, 77 #post-meta time { 78 display: inline !important 79 } 80</style></noscript>
80<script>(win=>{ 81 win.saveToLocal = { 82 set: function setWithExpiry(key, value, ttl) { 83 if (ttl === 0) return 84 const now = new Date() 85 const expiryDay = ttl * 86400000 86 const item = { 87 value: value, 88 expiry: now.getTime() + expiryDay, 89 } 90 localStorage.setItem(key, JSON.stringify(item)) 91 }, 92 93 get: function getWithExpiry(key) { 94 const itemStr = localStorage.getItem(key) 95 96 if (!itemStr) { 97 return undefined 98 } 99 const item = JSON.parse(itemStr) 100 const now = new Date() 101 102 if (now.getTime() > item.expiry) { 103 localStorage.removeItem(key) 104 return undefined 105 } 106 return item.value 107 } 108 } 109 110 win.getScript = url => new Promise((resolve, reject) => { 111 const script = document.createElement('script') 112 script.src = url 113 script.async = true 114 script.onerror = reject 115 script.onload = script.onreadystatechange = function() { 116 const loadState = this.readyState 117 if (loadState && loadState !== 'loaded' && loadState !== 'complete') return 118 script.onload = script.onreadystatechange = null 119 resolve() 120 } 121 document.head.appendChild(script) 122 }) 123 124 win.activateDarkMode = function () { 125 document.documentElement.setAttribute('data-theme', 'dark') 126 if (document.querySelector('meta[name="theme-color"]') !== null) { 127 document.querySelector('meta[name="theme-color"]').setAttribute('content', '#0d0d0d') 128 } 129 } 130 win.activateLightMode = function () { 131 document.documentElement.setAttribute('data-theme', 'light') 132 if (document.querySelector('meta[name="theme-color"]') !== null) { 133 document.querySelector('meta[name="theme-color"]').setAttribute('content', '#ffffff') 134 } 135 } 136 const t = saveToLocal.get('theme') 137 138 const now = new Date() 139 const hour = now.getHours() 140 const isNight = hour <= 6 || hour >= 18 141 if (t === undefined) isNight ? activateDarkMode() : activateLightMode() 142 else if (t === 'light') activateLightMode() 143 else activateDarkMode() 144 145 const asideStatus = saveToLocal.get('aside-status') 146 if (asideStatus !== undefined) { 147 if (asideStatus === 'hide') { 148 document.documentElement.classList.add('hide-aside') 149 } else { 150 document.documentElement.classList.remove('hide-aside') 151 } 152 } 153 154 const fontSizeVal = saveToLocal.get('global-font-size') 155 if (fontSizeVal !== undefined) { 156 document.documentElement.style.setProperty('--global-font-size', fontSizeVal + 'px') 157 } 158 })(window)</script>
158<link rel="stylesheet" href="/css/custom.css" media="defer" onload="this.media='all'"><link rel="stylesheet" href="//at.alicdn.com/t/font_2492407_3wz9sdgpeam.css"><style type="text/css">#toggle-sidebar {bottom: 80px;}</style><link rel="stylesheet" href="/css/macblack.css"><link rel="stylesheet" href="/css/veditor.css"><link rel="stylesheet" href="/css/close.css"><link rel="stylesheet" href="/css/iconColor.css"><link rel="stylesheet" href="/css/copyright.css"><link rel="stylesheet" href="/css/notice.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/HexoPlusPlus/HexoPlusPlus@latest/talk.css" /><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css" media="defer" onload="this.media='all'">
158<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/echarts.min.js"></script>
158<script src="https://cdn.jsdelivr.net/npm/[email protected]/map/js/china.js"></script>
158<script src="https://cdn.jsdelivr.net/gh/HexoPlusPlus/HexoPlusPlus@latest/talk_user.js"></script>
158<!-- hexo injector head_end start --><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/l-lin/font-awesome-animation/dist/font-awesome-animation.min.css" media="defer" onload="this.media='all'"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/hexo-butterfly-tag-plugins-plus@latest/lib/tag_plugins.min.css" media="defer" onload="this.media='all'">
158<script async src="https://cdn.jsdelivr.net/npm/hexo-butterfly-tag-plugins-plus@latest/lib/carousel-touch.min.js"></script>
158<!-- hexo injector head_end end --><meta name="generator" content="Hexo 5.4.0"><link rel="alternate" href="/atom.xml" title="IMAGINE" type="application/atom+xml"> 159</head><body><div id="web_bg"></div><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="author-avatar"><img class="avatar-img" data-lazy-src="/img/avatar.jpg" onerror="onerror=null;src='/img/friend_404.gif'" alt="avatar"/></div><div class="site-data"><div class="data-item is-center"><div class="data-item-link"><a href="/archives/"><div class="headline">æç« </div><div class="length-num">37</div></a></div></div><div class="data-item is-center"><div class="data-item-link"><a href="/tags/"><div class="headline">æ ç¾</div><div class="length-num">20</div></a></div></div><div class="data-item is-center"><div class="data-item-link"><a href="/categories/"><div class="headline">åç±»</div><div class="length-num">14</div></a></div></div></div><hr/><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw iconfont icon-zhuye"></i><span> 主页</span></a></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><i class="fa-fw iconfont icon-mulu1"></i><span> ç®å½</span><i class="fas fa-chevron-down expand hide"></i></a><ul class="menus_item_child"><li><a class="site-page" href="/archives/"><i class="fa-fw iconfont icon-guidang1"></i><span> 彿¡£</span></a></li><li><a class="site-page" href="/tags/"><i class="fa-fw iconfont icon-biaoqian"></i><span> æ ç¾</span></a></li><li><a class="site-page" href="/categories/"><i class="fa-fw iconfont icon-category"></i><span> åç±»</span></a></li><li><a class="site-page" href="/collect/"><i class="fa-fw iconfont icon-shoucang"></i><span> æ¶è</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><i class="fa-fw iconfont icon-yule"></i><span> æ¸ å</span><i class="fas fa-chevron-down expand hide"></i></a><ul class="menus_item_child"><li><a class="site-page" href="/playlist/"><i class="fa-fw iconfont icon-gedan"></i><span> æå</span></a></li><li><a class="site-page" href="/books/"><i class="fa-fw iconfont icon-yuedumoshi"></i><span> 书å</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><i class="fa-fw iconfont icon-caozuojiemiantubiao---_gongju"></i><span> å·¥å ·</span><i class="fas fa-chevron-down expand hide"></i></a><ul class="menus_item_child"><li><a class="site-page" target="_blank" rel="noopener" href="https://imgtu.com/"><i class="fa-fw iconfont icon-cloud"></i><span> imgtu</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://www.leancloud.cn/"><i class="fa-fw iconfont icon-pinglun"></i><span> LeanCloud</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://www.cloudflare.com/zh-cn/"><i class="fa-fw iconfont icon-cloudcomputing"></i><span> Cloudflare</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://vercel.com/lp-imagine"><i class="fa-fw iconfont icon-webx"></i><span> Vercel</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://cloud.mongodb.com/v2#/org/610751ff4218af3732524482/projects"><i class="fa-fw iconfont icon-mongdbwapian"></i><span> MongoDB</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><i class="fa-fw iconfont icon-guanyu"></i><span> å ³äº</span><i class="fas fa-chevron-down expand hide"></i></a><ul class="menus_item_child"><li><a class="site-page" href="/about/"><i class="fa-fw iconfont icon-iconzhengli-"></i><span> å ³äºæ</span></a></li><li><a class="site-page" href="/message/"><i class="fa-fw iconfont icon-liuyanmoban"></i><span> çè¨æ¿</span></a></li><li><a class="site-page" href="/talks/"><i class="fa-fw iconfont icon-fengche"></i><span> 说说</span></a></li><li><a class="site-page" href="/link/"><i class="fa-fw iconfont icon-youqinglianjie"></i><span> åæ é¾æ¥</span></a></li><li><a class="site-page" href="/friends_link"><i class="fa-fw iconfont icon-pengyouquan"></i><span> å龿åå</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://imagine-nav.vercel.app/"><i class="fa-fw iconfont icon-daohang1"></i><span> 导èªç«</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://imagine.imagineblog.workers.dev/hpp/admin/login"><i class="fa-fw iconfont icon-xiezuo"></i><span> åå°</span></a></li></ul></div></div></div></div><div class="page" id="body-wrap"><header class="not-home-page" id="page-header"><nav id="nav"><span id="blog_name"><a id="site-name" href="/">IMAGINE</a></span><div id="menus"><div id="search-button"><a class="site-page social-icon search"><i class="fas fa-search fa-fw"></i></a></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw iconfont icon-zhuye"></i><span> 主页</span></a></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><i class="fa-fw iconfont icon-mulu1"></i><span> ç®å½</span><i class="fas fa-chevron-down expand hide"></i></a><ul class="menus_item_child"><li><a class="site-page" href="/archives/"><i class="fa-fw iconfont icon-guidang1"></i><span> 彿¡£</span></a></li><li><a class="site-page" href="/tags/"><i class="fa-fw iconfont icon-biaoqian"></i><span> æ ç¾</span></a></li><li><a class="site-page" href="/categories/"><i class="fa-fw iconfont icon-category"></i><span> åç±»</span></a></li><li><a class="site-page" href="/collect/"><i class="fa-fw iconfont icon-shoucang"></i><span> æ¶è</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><i class="fa-fw iconfont icon-yule"></i><span> æ¸ å</span><i class="fas fa-chevron-down expand hide"></i></a><ul class="menus_item_child"><li><a class="site-page" href="/playlist/"><i class="fa-fw iconfont icon-gedan"></i><span> æå</span></a></li><li><a class="site-page" href="/books/"><i class="fa-fw iconfont icon-yuedumoshi"></i><span> 书å</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><i class="fa-fw iconfont icon-caozuojiemiantubiao---_gongju"></i><span> å·¥å ·</span><i class="fas fa-chevron-down expand hide"></i></a><ul class="menus_item_child"><li><a class="site-page" target="_blank" rel="noopener" href="https://imgtu.com/"><i class="fa-fw iconfont icon-cloud"></i><span> imgtu</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://www.leancloud.cn/"><i class="fa-fw iconfont icon-pinglun"></i><span> LeanCloud</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://www.cloudflare.com/zh-cn/"><i class="fa-fw iconfont icon-cloudcomputing"></i><span> Cloudflare</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://vercel.com/lp-imagine"><i class="fa-fw iconfont icon-webx"></i><span> Vercel</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://cloud.mongodb.com/v2#/org/610751ff4218af3732524482/projects"><i class="fa-fw iconfont icon-mongdbwapian"></i><span> MongoDB</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><i class="fa-fw iconfont icon-guanyu"></i><span> å ³äº</span><i class="fas fa-chevron-down expand hide"></i></a><ul class="menus_item_child"><li><a class="site-page" href="/about/"><i class="fa-fw iconfont icon-iconzhengli-"></i><span> å ³äºæ</span></a></li><li><a class="site-page" href="/message/"><i class="fa-fw iconfont icon-liuyanmoban"></i><span> çè¨æ¿</span></a></li><li><a class="site-page" href="/talks/"><i class="fa-fw iconfont icon-fengche"></i><span> 说说</span></a></li><li><a class="site-page" href="/link/"><i class="fa-fw iconfont icon-youqinglianjie"></i><span> åæ é¾æ¥</span></a></li><li><a class="site-page" href="/friends_link"><i class="fa-fw iconfont icon-pengyouquan"></i><span> å龿åå</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://imagine-nav.vercel.app/"><i class="fa-fw iconfont icon-daohang1"></i><span> 导èªç«</span></a></li><li><a class="site-page" target="_blank" rel="noopener" href="https://imagine.imagineblog.workers.dev/hpp/admin/login"><i class="fa-fw iconfont icon-xiezuo"></i><span> åå°</span></a></li></ul></div></div><div id="toggle-menu"><a class="site-page"><i class="fas fa-bars fa-fw"></i></a></div></div></nav><div id="page-site-info"><h1 id="site-title">å ³äºæ</h1></div></header><main class="layout hide-aside" id="content-inner"><div id="page"><div id="article-container"><p><img src= "data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=" data-lazy-src="https://lovelijunyi.gitee.io/img/avatar.gif" alt="imagine"></p> 160<blockquote> 161<p>helloï¼æ¬äºº web å端å¼å䏿ãä»äºå¼åå·¥ä½ä¸¤å¹´å¤ï¼å¹³æ¶çè¡·äºææ¯ï¼å¶å°ä¹ç©ç©æ¸¸æã</p> 162</blockquote> 163<hr> 164<h2 id="ð-åºæ¬ä¿¡æ¯">
164<a href="#ð-åºæ¬ä¿¡æ¯" class="headerlink" title="ð åºæ¬ä¿¡æ¯"></a>ð åºæ¬ä¿¡æ¯</h2><div class="note primary no-icon modern"><h3 id="èä¸-ð»ï¼web-å端"><a href="#èä¸-ð»ï¼web-å端" class="headerlink" title="èä¸ ð»ï¼web å端"></a><span style="color:#49b1f5">èä¸ ð»</span>ï¼web å端</h3><h3 id="åæ -ðï¼NanChang"><a href="#åæ -ðï¼NanChang" class="headerlink" title="åæ ðï¼NanChang"></a><span style="color:#49b1f5">åæ ð</span>ï¼NanChang</h3><h3 id="ç±å¥½-ðï¼æ¸¸æãçµåãé³ä¹"><a href="#ç±å¥½-ðï¼æ¸¸æãçµåãé³ä¹" class="headerlink" title="ç±å¥½ ðï¼æ¸¸æãçµåãé³ä¹"></a><span style="color:#49b1f5">ç±å¥½ ð</span>ï¼æ¸¸æãçµåãé³ä¹</h3></div> 165 166<hr> 167<h2 id="ðª-æçåé¾ä¿¡æ¯"><a href="#ðª-æçåé¾ä¿¡æ¯" class="headerlink" title="ðª æçåé¾ä¿¡æ¯"></a>ðª æçåé¾ä¿¡æ¯</h2><figure class="highlight yml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line"><span class="bullet">-</span> <span class="attr">name:</span> <span class="string">imagine's</span> <span class="string">blog</span></span><br><span class="line"> <span class="attr">link:</span> <span class="string">http://www.imagineblog.host/</span></span><br><span class="line"> <span class="attr">avatar:</span> <span class="string">https://z3.ax1x.com/2021/07/28/WTnECT.jpg</span></span><br><span class="line"> <span class="attr">descr:</span> <span class="string">imagineðçæ¬ç æ¥å¿ï¼</span></span><br></pre></td></tr></table></figure> 168<hr> 169<h2 id="ð¨-æè½"><a href="#ð¨-æè½" class="headerlink" title="ð¨ æè½"></a>ð¨ æè½</h2><div class="mermaid">pie 170title Analysis of skill proportion 171"html" : 80 172"css" : 50 173"javascript" : 50 174"vue" : 40 175"react": 20 176"nodeJS": 10</div> 177</div></div></main><footer id="footer"><div class="github-div"><div></div><div class="github-badge"><a style="color:#fff" rel="external nofollow noopener noreferrer" href="https://hexo.io/" target="_blank" title="ç± Hexo 强å驱å¨" data-pjax-state=""><span class="badge-subject">ð´Powered</span><span class="badge-value bg-blue">Hexo</span></a></div><div class="github-badge"><a style="color:#fff" rel="external nofollow noopener noreferrer" href="https://imgtu.com/" target="_blank" title="æ¬ç«å¾ç使ç¨è·¯è¿å¾åº" data-pjax-state=""><span class="badge-subject">ðDrawing bed</span><span class="badge-value bg-brightgreen">imagtu</span></a></div><div class="github-badge"><a style="color:#fff" rel="external nofollow noopener noreferrer" href="https://github.com/" target="_blank" title="éæç½é¡µæç®¡äº GitHub Pages" data-pjax-state=""><span class="badge-subject">ðPages</span><span class="badge-value bg-brightgreen">GitHub</span></a></div><div class="github-badge"><a style="color:#fff" rel="external nofollow noopener noreferrer" href="https://www.jsdelivr.com/" target="_blank" title="jsDelivr æä¾ CDN å éæå¡" data-pjax-state=""><span class="badge-subject">ðCDN</span><span class="badge-value bg-orange">jsDelivr</span></a></div><div class="github-badge"><a style="color:#fff" rel="external nofollow noopener noreferrer" href="https://vercel.com/" target="_blank" title="vercel æä¾ CDN å éæå¡" data-pjax-state=""><span class="badge-subject">ðServer</span><span class="badge-value bg-orange">vercel</span></a></div><div class="github-badge"><a style="color:#fff" rel="external nofollow noopener noreferrer" href="http://creativecommons.org/licenses/by-nc-sa/4.0/" target="_blank" title="æ¬ç«ç¹éç¨ç¥è¯å ±äº«ç½²å-éå䏿§ä½¿ç¨-ç¸åæ¹å¼å ±äº« 4.0 å½é 许å¯åè®®è¿è¡è®¸å¯" data-pjax-state=""><span class="badge-subject"><i class="fa fa-copyright"></i></span><span class="badge-value bg-gradient">BY-NC-SA 4.0</span></a></div><div class="github-badge"><a style="color:#fff" rel="external nofollow noopener noreferrer" href="https://github.com/jerryc127/hexo-theme-butterfly" target="_blank" title="主é¢" data-pjax-state=""><span class="badge-subject">ð¨Theme</span><span class="badge-value bg-blueviolet">Butterfly</span></a></div><div class="github-badge"><a style="color:#fff" rel="external nofollow noopener noreferrer" href="https://beian.miit.gov.cn/" target="_blank" title="æ¬ç«ç¹å·²éè¿å·¥ä¿¡é¨ICP夿¡" data-pjax-state=""><span class="badge-subject">èµ£ICPå¤</span><span class="badge-value bg-gradient">2022000236å·-1</span></a></div><div class="github-badge"><a style="color:#fff" rel="external nofollow noopener noreferrer" href="http://imagineblog.host" target="_blank" title="copyright" data-pjax-state=""><span class="badge-subject">ðcopyright</span><span class="badge-value bg-gradient"><div class="copyright">©2020 - 2022 <i id="heartbeat" class="fa fas fa-heartbeat"></i> Peng</div></span></a></div><div class="github-badge"><span class="badge-subject">å®å ¨è¿è¡</span><a style="text-decoration:none;color:#fff;padding: 4px 4px 4px 6px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;min-width:180px;display: inline-block;" id="running-time" rel="external nofollow noopener noreferrer" href="" target="_blank" title="ç½ç«è¿è¡æ¶é´" data-pjax-state=""></a></div><div id="running-time">
177<script>//- setInterval(()=>{let create_time=Math.round(new Date('2020-02-18 00:00:00').getTime()/1000);let timestamp=Math.round((new Date().getTime()+8*60*60*1000)/1000);let second=timestamp-create_time;let time=new Array(0,0,0,0,0);if(second>=365*24*3600){time[0]=parseInt(second/(365*24*3600));second%=365*24*3600;}if(second>=24*3600){time[1]=parseInt(second/(24*3600));second%=24*3600;}if(second>=3600){time[2]=parseInt(second/3600);second%=3600;}if(second>=60){time[3]=parseInt(second/60);second%=60;}if(second>0){time[4]=second;}currentTimeHtml=time[0]+'å¹´'+time[1]+'天'+time[2]+'æ¶'+time[3]+'å'+time[4]+'ç§';document.getElementById("running-time").innerHTML=currentTimeHtml;},1000); 178setInterval(()=>{ 179 let create_time=Math.round(new Date('2020-01-03 00:00:00').getTime()/1000); 180 let timestamp=Math.round((new Date().getTime()+8*60*60*1000)/1000); 181 let second=timestamp-create_time; 182 let time=new Array(0,0,0,0,0); 183 if(second>=365*24*3600){ 184 time[0]=parseInt(second/(365*24*3600)); 185 second%=365*24*3600; 186 } 187 if(second>=24*3600){ 188 time[1]=parseInt(second/(24*3600)); 189 second%=24*3600; 190 } 191 if(second>=3600){ 192 time[2]=parseInt(second/3600);second%=3600; 193 } 194 if(second>=60){ 195 time[3]=parseInt(second/60);second%=60; 196 } 197 if(second>0){ 198 time[4]=second; 199 } 200 currentTimeHtml=`<span style="color:#fff;"><span style="color:#000">${time[0]}</span> å¹´ <span style="color:#9253A8">${time[1]}</span> 天 <span style="color:#50ABF1">${time[2]}</span> æ¶<span style="color:#666">${time[3]}</span> å<span style="color:red">${time[4]}</span> ç§</span>`; 201 document.getElementById("running-time").innerHTML=currentTimeHtml; 202},1000); 203 204 205</script>
205</div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="font-plus" type="button" title="æ¾å¤§åä½"><i class="fas fa-plus"></i></button><button id="font-minus" type="button" title="缩å°åä½"><i class="fas fa-minus"></i></button><button id="darkmode" type="button" title="æµ
è²åæ·±è²æ¨¡å¼è½¬æ¢"><i class="fas fa-adjust"></i></button></div><div id="rightside-config-show"><button id="rightside_config" type="button" title="设置"><i class="fas fa-cog fa-spin"></i></button><button id="chat_btn" type="button" title="SMS"><i class="iconfont icon-sms"></i></button><button id="go-up" type="button" title="åå°é¡¶é¨"><i class="iconfont icon-backtop"></i></button></div></div><div id="local-search"><div class="search-dialog"><div class="search-dialog__title" id="local-search-title">æ¬å°æç´¢</div><div id="local-input-panel"><div id="local-search-input"><div class="local-search-box"><input class="local-search-box--input" placeholder="æç´¢æç« " type="text"/></div></div></div><hr/><div id="local-search-results"></div><span class="search-close-button"><i class="fas fa-times"></i></span></div><div id="search-mask"></div></div><div>
205<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>
205<script src="/js/utils.js"></script>
205<script src="/js/main.js"></script>
205<script src="https://cdn.jsdelivr.net/npm/medium-zoom/dist/medium-zoom.min.js"></script>
205<script src="https://cdn.jsdelivr.net/npm/instant.page/instantpage.min.js" type="module"></script>
205<script src="https://cdn.jsdelivr.net/npm/vanilla-lazyload/dist/lazyload.iife.min.js"></script>
205<script src="https://cdn.jsdelivr.net/npm/node-snackbar/dist/snackbar.min.js"></script>
205<script>function panguFn () { 206 if (typeof pangu === 'object') pangu.autoSpacingPage() 207 else { 208 getScript('https://cdn.jsdelivr.net/npm/pangu/dist/browser/pangu.min.js') 209 .then(() => { 210 pangu.autoSpacingPage() 211 }) 212 } 213} 214 215function panguInit () { 216 if (true){ 217 GLOBAL_CONFIG_SITE.isPost && panguFn() 218 } else { 219 panguFn() 220 } 221} 222 223document.addEventListener('DOMContentLoaded', panguInit)</script>
223<script src="/js/search/local-search.js"></script>
223<div class="js-pjax">
223<script>if (document.getElementsByClassName('mermaid').length) { 224 if (window.mermaidJsLoad) mermaid.init() 225 else { 226 getScript('https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js').then(() => { 227 window.mermaidJsLoad = true 228 mermaid.initialize({ 229 theme: 'default', 230 }) 231 true && mermaid.init() 232 }) 233 } 234}</script>
234<script>var gitcalendar = new Vue({ 235 el: '#gitcalendar', 236 data: { 237 simplemode: false, 238 user: 'lp-Imagine', 239 fixed: 'fixed', 240 px: 'px', 241 x: '', 242 y: '', 243 span1: '', 244 span2: '', 245 month: ['䏿', 'äºæ', '䏿', 'åæ', 'äºæ', 'å æ', '䏿', 'å «æ', '乿', 'åæ', 'å䏿', 'åäºæ'], 246 monthchange: [], 247 oneyearbeforeday: '', 248 thisday: '', 249 amonthago: '', 250 aweekago: '', 251 weekdatacore: 0, 252 datacore: 0, 253 total: 0, 254 datadate: '', 255 data: [], 256 positionplusdata: [], 257 firstweek: [], 258 lastweek: [], 259 beforeweek: [], 260 thisweekdatacore: 0, 261 mounthbeforeday: 0, 262 mounthfirstindex: 0, 263 crispedges: 'crispedges', 264 thisdayindex: 0, 265 amonthagoindex: 0, 266 amonthagoweek: [], 267 firstdate: [], 268 first2date: [], 269 montharrbefore: [], 270 monthindex: 0, 271 color: ['rgb(145, 145, 145, 0.2)', '#c6ecc1', '#a0e2bb', '#81D8CF', '#70c5d3', '#60a2ce', '#507ac9', '#4356c5', '#423cc4', '#5b3abc', '#7138b6'] 272 }, 273 methods: { 274 selectStyle(data, event) { 275 document.querySelector('.angle-wrapper').style.display = 'block' 276 this.span1 = data.date; 277 this.span2 = data.count; 278 this.x = event.clientX - 100; 279 this.y = event.clientY - 60 280 }, 281 outStyle() { 282 document.querySelector('.angle-wrapper').style.display = 'none' 283 }, 284 thiscolor(x) { 285 if (x === 0) { 286 let i = parseInt(x / 2); 287 return this.color[0] 288 } else if (x < 2) { 289 return this.color[1] 290 } else if (x < 20) { 291 let i = parseInt(x / 2); 292 return this.color[i] 293 } else { 294 return this.color[9] 295 } 296 }, 297 } 298}); 299var apiurl = 'python-github-calendar-api-zfour.vercel.app' ? 'https://python-github-calendar-api-zfour.vercel.app/api?' : 'https://githubapi.ryanchristian.dev/user/' 300var githubapiurl = apiurl + gitcalendar.user; 301//canvasç»å¾ 302function responsiveChart() { 303 let c = document.getElementById("gitcanvas"); 304 if (c) {
305 let cmessage = document.getElementById("gitmessage"); 306 let ctx = c.getContext("2d"); 307 c.width = document.getElementById("gitcalendarcanvasbox").offsetWidth; 308 let linemaxwitdh = 0.96 * c.width / gitcalendar.data.length; 309 c.height = 9 * linemaxwitdh; 310 let lineminwitdh = 0.8 * linemaxwitdh; 311 let setposition = { 312 x: 0.02 * c.width, 313 y: 0.025 * c.width 314 }; 315 for (let week in gitcalendar.data) { 316 weekdata = gitcalendar.data[week]; 317 for (let day in weekdata) { 318 let dataitem = { 319 date: "", 320 count: "", 321 x: 0, 322 y: 0 323 }; 324 gitcalendar.positionplusdata.push(dataitem); 325 ctx.fillStyle = gitcalendar.thiscolor(weekdata[day].count); 326 setposition.y = Math.round(setposition.y * 100) / 100; 327 dataitem.date = weekdata[day].date; 328 dataitem.count = weekdata[day].count; 329 dataitem.x = setposition.x; 330 dataitem.y = setposition.y; 331 ctx.fillRect(setposition.x, setposition.y, lineminwitdh, lineminwitdh); 332 setposition.y = setposition.y + linemaxwitdh 333 }; 334 setposition.y = 0.025 * c.width; 335 setposition.x = setposition.x + linemaxwitdh 336 }; 337 ctx.font = "600 Arial"; 338 ctx.fillStyle = '#aaa'; 339 ctx.fillText("æ¥", 0, 1.9 * linemaxwitdh); 340 ctx.fillText("äº", 0, 3.9 * linemaxwitdh); 341 ctx.fillText("å", 0, 5.9 * linemaxwitdh); 342 ctx.fillText("å ", 0, 7.9 * linemaxwitdh); 343 let monthindexlist = c.width / 24; 344 for (let index in gitcalendar.monthchange) { 345 ctx.fillText(gitcalendar.monthchange[index], monthindexlist, 0.7 * linemaxwitdh); 346 monthindexlist = monthindexlist + c.width / 12 347 }; 348 cmessage.onmousemove = function(event) { 349 document.querySelector('.angle-wrapper').style.display = 'none' 350 }; 351 c.onmousemove = function(event) { 352 document.querySelector('.angle-wrapper').style.display = 'none' 353 getMousePos(c, event); 354 }; 355 356 function getMousePos(canvas, event) { 357 var rect = canvas.getBoundingClientRect(); 358 var x = event.clientX - rect.left * (canvas.width / rect.width); 359 var y = event.clientY - rect.top * (canvas.height / rect.height); 360 //console.log("x:"+x+",y:"+y); 361 for (let item of gitcalendar.positionplusdata) { 362 let lenthx = x - item.x; 363 let lenthy = y - item.y; 364 //console.log(lenthx,lenthy); 365 if (0 < lenthx && lenthx < lineminwitdh) { 366 if (0 < lenthy && lenthy < lineminwitdh) { 367 //console.log(item.date,item.count) 368 document.querySelector('.angle-wrapper').style.display = 'block' 369 gitcalendar.span1 = item.date; 370 gitcalendar.span2 = item.count; 371 gitcalendar.x = event.clientX - 100; 372 gitcalendar.y = event.clientY - 60 373 } 374 } 375 //if(0< x - item.x <lineminwitdh&&0< y - item.y <lineminwitdh){ 376 //console.log(item.count,item.date); 377 //} 378 } 379 } 380 } 381} 382//æ°æ®ç»è®¡ç®æ³ 383function addlastmonth() { 384 if (gitcalendar.thisdayindex === 0) { 385 thisweekcore(52); 386 thisweekcore(51); 387 thisweekcore(50); 388 thisweekcore(49); 389 thisweekcore(48); 390 gitcalendar.thisweekdatacore += gitcalendar.firstdate[6].count; 391 gitcalendar.amonthago = gitcalendar.firstdate[6].date 392 } else { 393 thisweekcore(52); 394 thisweekcore(51); 395 thisweekcore(50); 396 thisweekcore(49); 397 thisweek2core(); 398 gitcalendar.amonthago = gitcalendar.first2date[gitcalendar.thisdayindex - 1].date 399 } 400}; 401 402function thisweek2core() { 403 for (let i = gitcalendar.thisdayindex - 1; i < gitcalendar.first2date.length; i++) { 404 gitcalendar.thisweekdatacore += gitcalendar.first2date[i].count 405 } 406}; 407 408function thisweekcore(index) { 409 for (let item of gitcalendar.data[index]) { 410 gitcalendar.thisweekdatacore += item.count 411 } 412}; 413 414function addlastweek() { 415 for (let item of gitcalendar.lastweek) { 416 gitcalendar.weekdatacore += item.count 417 } 418}; 419 420function addbeforeweek() { 421 for (let i = gitcalendar.thisdayindex; i < gitcalendar.beforeweek.length; i++) { 422 gitcalendar.weekdatacore += gitcalendar.beforeweek[i].count 423 } 424}; 425 426function addweek(data) { 427 if (gitcalendar.thisdayindex === 6) { 428 gitcalendar.aweekago = gitcalendar.lastweek[0].date; 429 addlastweek() 430 } else { 431 lastweek = data.contributions[51]; 432 gitcalendar.aweekago = lastweek[gitcalendar.thisdayindex + 1].date; 433 addlastweek(); 434 addbeforeweek() 435 } 436} 437 438fetch(githubapiurl) 439 .then(data => data.json()) 440 .then(data => { 441 gitcalendar.data = data.contributions; 442 gitcalendar.total = data.total; 443 gitcalendar.first2date = gitcalendar.data[48]; 444 gitcalendar.firstdate = gitcalendar.data[47]; 445 gitcalendar.firstweek = data.contributions[0]; 446 gitcalendar.lastweek = data.contributions[52]; 447 gitcalendar.beforeweek = data.contributions[51]; 448 gitcalendar.thisdayindex = gitcalendar.lastweek.length - 1; 449 gitcalendar.thisday = gitcalendar.lastweek[gitcalendar.thisdayindex].date; 450 gitcalendar.oneyearbeforeday = gitcalendar.firstweek[0].date; 451 gitcalendar.monthindex = gitcalendar.thisday.substring(5, 7) * 1; 452 gitcalendar.montharrbefore = gitcalendar.month.splice(gitcalendar.monthindex, 12 - gitcalendar.monthindex); 453 gitcalendar.monthchange = gitcalendar.montharrbefore.concat(gitcalendar.month); 454 addweek(data); 455 addlastmonth(); 456 responsiveChart(); 457 }) 458 .catch(function(error) { 459 console.log(error); 460 }); 461 462//ææºçæ´æ¢ä¸ºsvgç»å¶ 463if (document.getElementById("gitcalendarcanvasbox") && document.getElementById("gitcalendarcanvasbox").offsetWidth < 500) { 464 gitcalendar.simplemode = false 465} 466 467//彿¹åçªå£å¤§å°æ¶éæ°ç»å¶canvas 468window.onresize = function() { 469 if (gitcalendar.simplemode) responsiveChart() 470} 471 472//è§£å³æ»å¨æ»è½®æ¶åºç°çæ ç¾æ¾ç¤º 473window.onscroll = function() { 474 if (document.querySelector('.angle-wrapper')) { 475 document.querySelector('.angle-wrapper').style.display = 'none' 476 } 477};</script>
477</div>
477<script>window.addEventListener('load', () => { 478 const changeContent = (content) => { 479 if (content === '') return content 480 481 content = content.replace(/<img.*?src="(.*?)"?[^\>]+>/ig, '[å¾ç]') // replace image link 482 content = content.replace(/<a[^>]+?href=["']?([^"']+)["']?[^>]*>([^<]+)<\/a>/gi, '[龿¥]') // replace url 483 content = content.replace(/<pre><code>.*?<\/pre>/gi, '[代ç ]') // replace code 484 content = content.replace(/<[^>]+>/g,"") // remove html tag 485 486 if (content.length > 150) { 487 content = content.substring(0,150) + '...' 488 } 489 return content 490 } 491 492 const getComment = () => { 493 const runTwikoo = () => { 494 twikoo.getRecentComments({ 495 envId: 'https://twikoo-talks.vercel.app/', 496 region: '', 497 pageSize: 6, 498 includeReply: true 499 }).then(function (res) { 500 const twikooArray = res.map(e => { 501 return { 502 'content': changeContent(e.comment), 503 'avatar': e.avatar, 504 'nick': e.nick, 505 'url': e.url + '#' + e.id, 506 'date': new Date(e.created).toISOString() 507 } 508 }) 509 510 saveToLocal.set('twikoo-newest-comments', JSON.stringify(twikooArray), 10/(60*24)) 511 generateHtml(twikooArray) 512 }).catch(function (err) { 513 const $dom = document.querySelector('#card-newest-comments .aside-list') 514 $dom.innerHTML= "æ æ³è·åè¯è®ºï¼è¯·ç¡®è®¤ç¸å ³é ç½®æ¯å¦æ£ç¡®" 515 }) 516 } 517 518 if (typeof twikoo === 'object') { 519 runTwikoo() 520 } else { 521 getScript('https://cdn.jsdelivr.net/npm/twikoo/dist/twikoo.all.min.js').then(runTwikoo) 522 } 523 } 524 525 const generateHtml = array => { 526 let result = '' 527 528 if (array.length) { 529 for (let i = 0; i < array.length; i++) { 530 result += '<div class=\'aside-list-item\'>' 531 532 if (true) { 533 const name = 'data-lazy-src' 534 result += `<a href='${array[i].url}' class='thumbnail'><img ${name}='${array[i].avatar}' alt='${array[i].nick}'></a>` 535 } 536 537 result += `<div class='content'> 538 <a class='comment' href='${array[i].url}'>${array[i].content}</a> 539 <div class='name'><span>${array[i].nick} / </span><time datetime="${array[i].date}">${btf.diffDate(array[i].date, true)}</time></div> 540 </div></div>` 541 } 542 } else { 543 result += '没æè¯è®º' 544 } 545 546 let $dom = document.querySelector('#card-newest-comments .aside-list') 547 $dom.innerHTML= result 548 window.lazyLoadInstance && window.lazyLoadInstance.update() 549 window.pjax && window.pjax.refresh($dom) 550 } 551 552 const newestCommentInit = () => { 553 if (document.querySelector('#card-newest-comments .aside-list')) { 554 const data = saveToLocal.get('twikoo-newest-comments') 555 if (data) { 556 generateHtml(JSON.parse(data)) 557 } else { 558 getComment() 559 } 560 } 561 } 562 563 newestCommentInit() 564 document.addEventListener('pjax:complete', newestCommentInit) 565})</script>
565<script src="https://cdn.jsdelivr.net/npm/jquery@latest/dist/jquery.min.js"></script>
565<script src="/js/close.js"></script>
565<script defer data-pjax src="/js/maopao.js"></script>
565<script defer src="https://cdn.jsdelivr.net/gh/graingert/[email protected]/dist/wow.min.js"></script>
565<script defer data-pjax src="/js/wow-init.js"></script>
565<script src="https://myhkw.cn/api/player/1618646380121" id="myhk" key="1618646380121" m="1"></script>
565<script defer data-pjax src="https://cdn.jsdelivr.net/gh/xiabo2/CDN@latest/fishes.js"></script>
565<script src="/js/moments.js"></script>
565<canvas class="fireworks" mobile="false"></canvas>
565<script src="https://cdn.jsdelivr.net/npm/butterfly-extsrc@1/dist/fireworks.min.js"></script>
565<script id="canvas_nest" defer="defer" color="67,173,127" opacity="0.7" zIndex="-1" count="99" mobile="false" src="https://cdn.jsdelivr.net/npm/butterfly-extsrc@1/dist/canvas-nest.min.js"></script>
565<script src="https://cdn.jsdelivr.net/npm/butterfly-extsrc@1/dist/activate-power-mode.min.js"></script>
565<script>POWERMODE.colorful = true; 566POWERMODE.shake = false; 567POWERMODE.mobile = false; 568document.body.addEventListener('input', POWERMODE); 569</script>
569<script src="//code.tidio.co/bisrc3ghmylr0jd2ikrwcv8xp5i2nkwz.js" async="async"></script>
569<script>function onTidioChatApiReady() { 570 window.tidioChatApi.hide(); 571 window.tidioChatApi.on("close", function() { 572 window.tidioChatApi.hide(); 573 }); 574} 575if (window.tidioChatApi) { 576 window.tidioChatApi.on("ready", onTidioChatApiReady); 577} else { 578 document.addEventListener("tidioChat-ready", onTidioChatApiReady); 579} 580 581var chatBtnFn = () => { 582 document.getElementById("chat_btn").addEventListener("click", function(){ 583 window.tidioChatApi.show(); 584 window.tidioChatApi.open(); 585 }); 586} 587chatBtnFn() 588</script>
588<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.css" media="print" onload="this.media='all'">
588<script src="https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.js"></script>
588<script src="https://cdn.jsdelivr.net/gh/metowolf/[email protected]/dist/Meting.min.js"></script>
588<script src="https://cdn.jsdelivr.net/npm/pjax/pjax.min.js"></script>
588<script>let pjaxSelectors = [ 589 'title', 590 '#config-diff', 591 '#body-wrap', 592 '#rightside-config-hide', 593 '#rightside-config-show', 594 '#web_bg', 595 '.js-pjax' 596] 597 598if (false) { 599 pjaxSelectors.unshift('meta[property="og:image"]', 'meta[property="og:title"]', 'meta[property="og:url"]') 600} 601 602var pjax = new Pjax({ 603 elements: 'a:not([target="_blank"])', 604 selectors: pjaxSelectors, 605 cacheBust: false, 606 analytics: false, 607 scrollRestoration: false 608}) 609 610document.addEventListener('pjax:complete', function () { 611 window.refreshFn() 612 613 document.querySelectorAll('script[data-pjax]').forEach(item => { 614 const newScript = document.createElement('script') 615 const content = item.text || item.textContent || item.innerHTML || "" 616 Array.from(item.attributes).forEach(attr => newScript.setAttribute(attr.name, attr.value)) 617 newScript.appendChild(document.createTextNode(content)) 618 item.parentNode.replaceChild(newScript, item) 619 }) 620 //- document.querySelectorAll("script[data-pjax], .pjax-reload script").forEach((item) => { 621 //- const newScript = document.createElement("script"); 622 //- const content = item.text || item.textContent || item.innerHTML || ""; 623 //- Array.from(item.attributes).forEach((attr) => 624 //- newScript.setAttribute(attr.name, attr.value)); 625 //- newScript.appendChild(document.createTextNode(content)); 626 //- item.parentNode.replaceChild(newScript, item); 627 //- }); 628 629 GLOBAL_CONFIG.islazyload && window.lazyLoadInstance.update() 630 631 typeof chatBtnFn === 'function' && chatBtnFn() 632 typeof panguInit === 'function' && panguInit() 633 634 if (typeof gtag === 'function') { 635 gtag('config', '', {'page_path': window.location.pathname}); 636 } 637 638 typeof loadMeting === 'function' && document.getElementsByClassName('aplayer').length && loadMeting() 639 640 // Analytics 641 if (false) { 642 MtaH5.pgv() 643 } 644 645 // prismjs 646 typeof Prism === 'object' && Prism.highlightAll() 647 648 typeof preloader === 'object' && preloader.endLoading() 649}) 650 651 652document.addEventListener('pjax:send', function () { 653 typeof preloader === 'object' && preloader.initLoading() 654 655 if (window.aplayers) { 656 for (let i = 0; i < window.aplayers.length; i++) { 657 if (!window.aplayers[i].options.fixed) { 658 window.aplayers[i].destroy() 659 } 660 } 661 } 662 663 typeof typed === 'object' && typed.destroy() 664 665 //reset readmode 666 const $bodyClassList = document.body.classList 667 $bodyClassList.contains('read-mode') && $bodyClassList.remove('read-mode') 668 669}) 670 671document.addEventListener('pjax:error', (e) => { 672 if (e.request.status === 404) { 673 pjax.loadUrl('/404.html') 674 } 675})</script>
675<script async data-pjax src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
675</div><!-- hexo injector body_end start -->
675<script async src="//at.alicdn.com/t/font_2032782_8d5kxvn09md.js"></script>
675<!-- hexo injector body_end end --></body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.