「Widget:萌百条目」:修訂間差異
跳至導覽
跳至搜尋
imported>=海豚= 無編輯摘要 |
imported>Irukaza 無編輯摘要 |
||
(未顯示由 2 位使用者於中間所作的 96 次修訂) | |||
行 1: | 行 1: | ||
<noinclude> | <noinclude>Only for {{tl| 萌百 页面嵌 入}}</noinclude> | ||
<includeonly> | <includeonly> | ||
< | <script> | ||
const jsonp = (() => { | |||
let incrementCallbackKey = 0 | |||
return function jsonp(config) { | |||
return new Promise((resolve, reject) => { | |||
const scriptTag = document.createElement('script') | |||
const requestUrl = config.url + '?' + new URLSearchParams({ | |||
...config.params, | |||
. | callback: '___jsonpCallback' + ++incrementCallbackKey, | ||
}).toString() | |||
. | |||
scriptTag.src = requestUrl | |||
window['___jsonpCallback' + incrementCallbackKey] = resolve | |||
scriptTag.onload = () => scriptTag.remove() | |||
scriptTag.onerror = () => reject(new Error('jsonp request error')) | |||
document.body.appendChild(scriptTag) | |||
. | setTimeout(() => reject(new Error('jsonp request timeout')), 1_200) | ||
. | }) | ||
} | |||
. | })() | ||
jsonp({ | |||
url: 'https://zh.moegirl.org/api.php', | |||
params: { | |||
action: 'parse', | |||
format: 'json', | |||
page:document.body.querySelector('#moe').dataset.pagename | |||
} | |||
}) | |||
.then(data => { | |||
. | if (data.error) { | ||
. | throw new Error(data.error.info) | ||
} else { | |||
document.body.querySelector('#moe').innerHTML = data.parse.text['*'] | |||
document.querySelector( | } | ||
}) | |||
</script> | </script> | ||
</includeonly> | </includeonly> |
於 2022年3月8日 (二) 11:23 的最新修訂
Only for {{萌百頁面嵌入}}