打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

Widget:CCB-auto:修订间差异

来自OTTOWiki
第43行: 第43行:




<a id="CCB_button" class="mw-ui-button mw-ui-progressive" onclick="swit_so_CCB();">
<span id="CCB_button" class="oo-ui-widget oo-ui-widget-enabled oo-ui-buttonElement oo-ui-buttonElement-framed oo-ui-iconElement oo-ui-labelElement oo-ui-flaggedElement-progressive oo-ui-buttonWidget">
点我CCB
<a class="oo-ui-buttonElement-button" role="button" onclick="CCB_button();">
</a>
<span class="oo-ui-iconElement-icon oo-ui-icon-search oo-ui-image-progressive"></span>
<span class="oo-ui-labelElement-label">点我CCB!!</span>
<span class="oo-ui-indicatorElement-indicator oo-ui-indicatorElement-noIndicator oo-ui-image-progressive"></span>
</a>
</span>

2025年6月11日 (三) 17:51的版本

<script> (function waitForGadgetAndRun() { // 等待 mw 和 loader 初始化 if (typeof mw === 'undefined' || !mw.loader?.using || !mw.loader?.getState) { return setTimeout(waitForGadgetAndRun, 50); }

const gadgetName = 'ext.gadget.CaoCaoBi';

const state = mw.loader.getState(gadgetName);

if (state === 'registered') { // 如果还只是 registered,就主动触发加载 mw.loader.load(gadgetName); return setTimeout(waitForGadgetAndRun, 50); } if (state === 'loading' || state === 'loaded') { // 还在加载中,再等一等 return setTimeout(waitForGadgetAndRun, 50); } if (state === 'ready') { // 已加载完成,可以执行 if (typeof swit_so_CCB === 'function') { // swit_so_CCB(); CCB_button(); } else { console.warn('swit_so_CCB 仍未定义(函数未注册到 window?)'); } return; // // 不可识别状态,继续等 setTime、、ut(waitForGadgetAndRun, 50);

function CCB_button() { window.swit_so_CCB(); console.log("按钮触发"); }


、})();

</script>


<a class="oo-ui-buttonElement-button" role="button" onclick="CCB_button();"> 点我CCB!! </a>