Dantes (обсуждение | вклад) Нет описания правки |
Dantes (обсуждение | вклад) Нет описания правки Метка: ручная отмена |
||
Строка 22: | Строка 22: | ||
previewButton.addEventListener('click', function () { | previewButton.addEventListener('click', function () { | ||
var editText = document.getElementById('wpTextbox1').value; | var editText = document.getElementById('wpTextbox1').value; | ||
var api = new mw.Api( | var api = new mw.Api(); | ||
api.post({ | api.post({ | ||
action: 'parse', | action: 'parse', |
Версия от 06:16, 17 января 2025
(function () { if (mw.config.get('wgAction') !== 'edit' && mw.config.get('wgAction') !== 'submit') return; var previewButton = document.createElement('button'); previewButton.textContent = 'Предварительный просмотр'; previewButton.style.margin = '10px 0'; var previewContainer = document.createElement('div'); previewContainer.id = 'live-preview-container'; previewContainer.style.marginTop = '20px'; previewContainer.style.border = '1px solid #ccc'; previewContainer.style.padding = '10px'; previewContainer.style.backgroundColor = '#f9f9f9'; previewContainer.style.display = 'none'; var editForm = document.getElementById('editform'); if (editForm) { editForm.parentNode.insertBefore(previewButton, editForm); editForm.parentNode.insertBefore(previewContainer, editForm.nextSibling); } previewButton.addEventListener('click', function () { var editText = document.getElementById('wpTextbox1').value; var api = new mw.Api(); api.post({ action: 'parse', text: editText, contentmodel: 'wikitext', format: 'json' }).done(function (data) { previewContainer.style.display = 'block'; previewContainer.innerHTML = data.parse.text['*']; }).fail(function () { previewContainer.style.display = 'block'; previewContainer.textContent = 'Ошибка загрузки предварительного просмотра.'; }); }); })();