LLWiki正在建设中,欢迎加入我们!
“User:Bhsd/edit.js”的版本间差异
跳转到导航
跳转到搜索
小 |
小 (// 使用Wikiplus小工具快速编辑) 标签:移动版网页编辑 移动版编辑 |
||
第5行: | 第5行: | ||
btns = $('#wpSaveWidget, #wpPreviewWidget, #wpDiffWidget, #wpTemplateSandboxPreview'), |
btns = $('#wpSaveWidget, #wpPreviewWidget, #wpDiffWidget, #wpTemplateSandboxPreview'), |
||
action = mw.config.get('wgAction'), |
action = mw.config.get('wgAction'), |
||
contentmodel = mw.config.get('wgPageContentModel'), |
|||
skin = mw.config.get('skin'); |
skin = mw.config.get('skin'); |
||
第73行: | 第74行: | ||
} |
} |
||
if( |
if(contentmodel == 'javascript') { |
||
$('body').on('keydown', '#wpTextbox1, #Wikiplus-Quickedit', function(e){ |
$('body').on('keydown', '#wpTextbox1, #Wikiplus-Quickedit', function(e){ |
||
if(e.keyCode == 9){ |
if(e.keyCode == 9){ |
||
第91行: | 第92行: | ||
// 由于以下代码的奇怪性质,本页面不应频繁修改,至少不能使用移动版皮肤修改 |
// 由于以下代码的奇怪性质,本页面不应频繁修改,至少不能使用移动版皮肤修改 |
||
btns.on('click', function() { |
btns.on('click', function() { |
||
if( |
if(contentmodel == 'javascript') { editBox.val(editBox.val().replace(/\t/g, " ")); } |
||
if(skin == 'vector') { return; } |
if(skin == 'vector' || contentmodel == 'wikitext') { return; } |
||
editBox.val(editBox.val().replace(/(‘|’)/g,"'")); |
editBox.val(editBox.val().replace(/(‘|’)/g,"'")); |
||
editBox.val(editBox.val().replace(/(“|”)/g,'"')); |
editBox.val(editBox.val().replace(/(“|”)/g,'"')); |
2020年10月5日 (一) 19:51的版本
$(function() { /* JavaScript编辑界面按tab键空4格 */ var editBox = $('#wpTextbox1'), title = mw.config.get('wgPageName'), btns = $('#wpSaveWidget, #wpPreviewWidget, #wpDiffWidget, #wpTemplateSandboxPreview'), action = mw.config.get('wgAction'), contentmodel = mw.config.get('wgPageContentModel'), skin = mw.config.get('skin'); if(['edit', 'submit'].includes(action)) { $('#wpTextbox1').on( 'wikiEditor-toolbar-doneInitialSections', function() { $('.oo-ui-icon-articleSearch').one('click', function() { var timer = setInterval(function() { if( $('#wikieditor-toolbar-replace-replace').length ) { clearInterval(timer); var ele = $( '<textarea id="wikieditor-toolbar-replace-replace" tabindex="10">' ) .keydown(function(e) { if(e.keyCode == '13'){ var text = ele.val(), before = text.substring(0, ele.prop('selectionStart')), after = text.substring( ele.prop('selectionEnd') ); ele.val(before + '\n' + after); } }); $( 'input#wikieditor-toolbar-replace-replace' ).replaceWith(ele); } }, 100); }); }); } // 引自[[moegirl:User:東東君/js/Wikiplus-replace.js]] if( action == 'view' && mw.config.get('wgIsArticle') && mw.config.get('wgIsProbablyEditable') && (mw.loader.getState( 'ext.gadget.Wikiplus' ) == 'ready' || mw.loader.getState( 'ext.gadget.mobile-Wikiplus' ) == 'ready') ) { $('body').on('click', '#Wikiplus-Edit-TopBtn, .Wikiplus-Edit-SectionBtn', function(){ var timer = setInterval(function() { if( $('#Wikiplus-Quickedit-Jump').length ) { clearInterval(timer); if( $('#Wikiplus-Quickedit-Replace').length ) { return; } $('#Wikiplus-Quickedit-Jump').after( '<span id="Wikiplus-Quickedit-Replace" class="Wikiplus-Btn">替换</span>' ); $('#Wikiplus-Quickedit-Replace').on('click', function() { if($('.quickEdit-replace').length === 0) { var textarea = $('#Wikiplus-Quickedit'), backup = "", dialog = $('<div class="quickEdit-replace"><label>查找:<input type="text" id="quickEdit-replace-pattern"></label><label>替换:<textarea id="quickEdit-replace-val"></textarea></label><label id="quickEdit-replace-regex"><input type="checkbox">正则</label><button id="quickEdit-replace_replaceBtn">替换</button><button id="quickEdit-replace_undoBtn" disabled="true">撤销</button><button id="quickEdit-replace_hideBtn">关闭</button></div>') .appendTo('.Wikiplus-InterBox') .on('click', '#quickEdit-replace_hideBtn', function(e) { $(e.delegateTarget).css('display', 'none'); }) .on('click', '#quickEdit-replace_undoBtn', function() { textarea.val(backup); }) .on('click', '#quickEdit-replace_replaceBtn', function() { var ptn = $('#quickEdit-replace-pattern').val(), value = $('#quickEdit-replace-val').val(), isRegex = $('#quickEdit-replace-regex input').prop('checked'); backup = textarea.val(); $( '#quickEdit-replace_undoBtn' ).prop('disabled', false); mw.loader.using( 'mediawiki.util' ).then(function() { textarea.val( backup.replace(new RegExp( isRegex ? ptn : mw.util.escapeRegExp(ptn), 'g' ), value) ); }); }); mw.loader.using( 'jquery.ui' ).then(function() { dialog.draggable(); }); } else { $('.quickEdit-replace').css('display', 'initial'); } }); } }, 100); }); } if(contentmodel == 'javascript') { $('body').on('keydown', '#wpTextbox1, #Wikiplus-Quickedit', function(e){ if(e.keyCode == 9){ e.preventDefault(); var position = this.selectionStart, left = this.value.substring(0, position), right = this.value.substring(position), code = left + ' ' + right; this.value = code; this.selectionStart = this.selectionEnd = position + 4; } }); } $( 'input[name=wpTemplateSandboxPage]' ).val(function() { return $(this).val() || title }); // 由于以下代码的奇怪性质,本页面不应频繁修改,至少不能使用移动版皮肤修改 btns.on('click', function() { if(contentmodel == 'javascript') { editBox.val(editBox.val().replace(/\t/g, " ")); } if(skin == 'vector' || contentmodel == 'wikitext') { return; } editBox.val(editBox.val().replace(/(‘|’)/g,"'")); editBox.val(editBox.val().replace(/(“|”)/g,'"')); }); });