LLWiki正在建设中,欢迎加入我们!
User:Bhsd/widget/player.js
跳转到导航
跳转到搜索
注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的更改的影响。
- Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
- Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
- Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5。
//<nowiki>
// 用于[[Widget:Bilibili]]和[[Widget:Youtube]],可以使用ES6语法
/**
* @Function: 懒加载外部播放器(暂时性措施,用于兼容Firefox和Safari)
* @Author: User:Bhsd
*/
"use strict";
/* global mw */
(() => {
const main = () => {
mw.widget = mw.widget || {};
if (mw.widget.player) { return; }
document.getElementById( 'bodyContent' ).addEventListener('click', ({target}) => {
if (!target.classList.contains( 'mw-collapsible-text' )) { return; }
const frame = target.closest( '.BiliTable' )?.querySelector( 'iframe' ); // jshint ignore: line
if (frame && frame.src == 'about:blank') { frame.src = frame.dataset.src; }
}, true);
mw.widget.player = true;
};
if (window.mw) { main(); }
else { window.addEventListener( 'jquery', main ); }
}) ();
//</nowiki>
// [[category:JavaScript小部件]] {{DEFAULTSORT:player}}