MediaWiki:Common.js:修訂間差異
外觀
建立內容為「// <![CDATA[ (function() { // 仅在包含 inputbox 的页面执行,避免全站性能损耗 var inputBox = document.querySelector('.mw-inputbox'); if (!inputBox) return; var today = new Date(); var day = today.getDate(); var month = (today.getMonth() + 1).toString().padStart(2, '0'); var year = today.getFullYear(); // 精准定位 InputBox 生成的输入框 var targetInput = inputBox.querySelector('input[type="text"]…」的新頁面 標籤:行動版編輯 行動版網頁編輯 進階行動版編輯 |
無編輯摘要 標籤:行動版編輯 行動版網頁編輯 進階行動版編輯 |
||
| 第1行: | 第1行: | ||
// <![CDATA[ | // <![CDATA[ | ||
(function() { | (function() { | ||
// | // 等待 DOM 載入完成 | ||
if (document.readyState === 'loading') { | |||
document.addEventListener('DOMContentLoaded', init); | |||
} else { | |||
init(); | |||
} | |||
function init() { | |||
// 嘗試多種可能的 container class | |||
var container = document.querySelector('.mw-inputbox') || | |||
document.querySelector('.wb-inputbox') || | |||
document.querySelector('form[action*="action=edit"] input[type="text"]'); | |||
if (!container) return; | |||
// 確保只對 inputbox 有效 | |||
if (!container.closest && container.tagName !== 'FORM') return; | |||
var input = container.querySelector('input[type="text"]'); | |||
if (!input) return; | |||
// | // 防重複執行 | ||
var | if (input.dataset.autoFilled) return; | ||
var form = | |||
if (form && | var d = new Date(); | ||
var day = d.getDate(); | |||
var mon = ('0' + (d.getMonth() + 1)).slice(-2); | |||
var yr = d.getFullYear(); | |||
// 填入日期 | |||
input.value = day + '日'; | |||
input.placeholder = '例如:' + day + '日'; | |||
input.dataset.autoFilled = 'true'; | |||
// 修正 form action 中的年月 | |||
var form = input.closest('form'); | |||
if (form) { | |||
var action = form.getAttribute('action') || ''; | |||
if (action.includes('日誌/') && !action.includes('日誌/' + yr + '年/' + mon + '月/')) { | |||
form.setAttribute('action', action.replace(/日誌\/\d{4}年\/\d{2}月\//, '日誌/' + yr + '年/' + mon + '月/')); | |||
} | |||
} | } | ||
} | } | ||
})(); | })(); | ||
// ]]> | // ]]> | ||