2023年政策修订增补工作正在进行中,欢迎参与!
User:机智的小鱼君/gadget/Waline.js
< User:机智的小鱼君 | gadget
注意:在保存之后,您可能需要清除浏览器缓存才能看到所作出的变更的影响。
- Firefox/Safari:按住“Shift”的同时单击“刷新”,或按“Ctrl-F5”或“Ctrl-R”(Mac为“⌘-R”)
- Google Chrome:按“Ctrl-Shift-R”(Mac为“⌘-Shift-R”)
- Internet Explorer:按住“Ctrl”的同时单击“刷新”,或按“Ctrl-F5”
- Opera:在“工具→首选项”中清除缓存
- 如果您已登录但该页面出现未登录状态,请尝试在地址栏的地址最后添加代码
?_=1
来访问最新页面。 - 添加代码后的本页地址如下:
-{R|https://moegirl.icu/User:%E6%9C%BA%E6%99%BA%E7%9A%84%E5%B0%8F%E9%B1%BC%E5%90%9B/gadget/Waline.js?_=1}-
mw.hook('wikipage.content').add(($content) => (async () => { const parent = $content.get(0) const conf = mw.config.values // filter if (!conf.wgIsArticle || !conf.wgArticleId) { return } // main const Waline = await importWaline() const container = document.createElement('div') container.id = 'moegirl-comment' parent.insertAdjacentElement('afterend', container) Waline.init({ el: container, serverURL: 'https://moegirl-waline.epb.wiki', wordLimit: 233, login: 'force', path: `${conf.wgDBname}-${conf.wgArticleId}`, }) // utils async function importWaline() { if (window.Waline) { return window.Waline } return Promise.all([ loadScript('https://unpkg.com/@waline/client@2/dist/waline.js'), loadStyle('https://unpkg.com/@waline/client@2/dist/waline.css'), ]).then(() => { return window.Waline }) } async function loadScript(src = '') { return new Promise((resolve, reject) => { const script = document.createElement('script') script.src = src script.onload = resolve script.onerror = reject document.body.appendChild(script) }) } async function loadStyle(href = '') { return new Promise((resolve, reject) => { const link = document.createElement('link') link.href = href link.rel = 'stylesheet' link.onload = resolve link.onerror = reject document.head.appendChild(link) }) } })() )