mirror of
https://github.com/jerryc127/hexo-theme-butterfly.git
synced 2026-04-16 19:30:54 +08:00
fix: Utterances 評論區在多個頁面顯示的是同一個評論區 fix: 修復評論配置爲 Livere 和 Facebook Comments 時,最新評論模塊仍然顯示的 bug improvement: blueimp_md5 CDN 可配置 improvement: timeline 優化 improvement: css優化 improvement: 友情鏈接優化
69 lines
2.9 KiB
Plaintext
69 lines
2.9 KiB
Plaintext
#article-container
|
|
.flink
|
|
if page.flink_url
|
|
script.
|
|
(()=>{
|
|
const replaceSymbol = (str) => {
|
|
return str.replace(/[\p{P}\p{S}]/gu, '-')
|
|
}
|
|
|
|
let result = ''
|
|
fetch('!{url_for(page.flink_url)}')
|
|
.then(response => response.json())
|
|
.then(str => {
|
|
for(let i = 0; i < str.length; i++){
|
|
const replaceClassName = replaceSymbol(str[i].class_name)
|
|
const className = str[i].class_name ? `<h2 id='${replaceClassName}'><a href="#${replaceClassName}" class="headerlink" title="${str[i].class_name}"></a>${str[i].class_name}</h2>` : ''
|
|
const classDesc = str[i].class_desc ? `<div class='flink-desc'>${str[i].class_desc}</div>` : ''
|
|
|
|
let listResult = ''
|
|
const lists = str[i].link_list
|
|
for(let j = 0; j < lists.length; j++){
|
|
listResult += `
|
|
<div class="flink-list-item">
|
|
<a href='${lists[j].link}' title='${lists[j].name}' target='_blank'>
|
|
<div class='flink-item-icon'>
|
|
<img class='no-lightbox' src='${lists[j].avatar}' onerror='this.onerror=null;this.src="!{url_for(theme.error_img.flink)}"' alt='${lists[j].name}' />
|
|
</div>
|
|
<div class='flink-item-name'>${lists[j].name}</div>
|
|
<div class='flink-item-desc' title='${lists[j].descr}'>${lists[j].descr}</div>
|
|
</a>
|
|
</div>`
|
|
}
|
|
|
|
result += `${className}${classDesc} <div class='flink-list'>${listResult}</div>`
|
|
}
|
|
|
|
document.querySelector('.flink').insertAdjacentHTML('afterbegin', result)
|
|
})
|
|
})()
|
|
|
|
else
|
|
if site.data.link
|
|
- let result = ''
|
|
each i in site.data.link
|
|
- let className = i.class_name ? markdown(`## ${i.class_name}`) : ''
|
|
- let classDesc = i.class_desc ? `<div class='flink-desc'>${i.class_desc}</div>` : ''
|
|
|
|
- let listResult = ''
|
|
|
|
each j in i.link_list
|
|
-
|
|
listResult += `
|
|
<div class="flink-list-item">
|
|
<a href='${j.link}' title='${j.name}' target='_blank'>
|
|
<div class='flink-item-icon'>
|
|
<img class='no-lightbox' src='${j.avatar}' onerror='this.onerror=null;this.src="${url_for(theme.error_img.flink)}"' alt='${j.name}' />
|
|
</div>
|
|
<div class='flink-item-name'>${j.name}</div>
|
|
<div class='flink-item-desc' title='${j.descr}'>${j.descr}</div>
|
|
</a>
|
|
</div>`
|
|
-
|
|
|
|
- result += `${className}${classDesc} <div class='flink-list'>${listResult}</div>`
|
|
|
|
- page.content = result + page.content
|
|
!= page.content
|
|
|