“MediaWiki:Gadget-NotifyWhenCopy.js”的版本间的差异
来自小鱼君和他的朋友们
(未显示同一用户的26个中间版本) | |||
第1行: | 第1行: | ||
$(function() { | $(function() { | ||
− | // | + | mw.loader.load('https://common.wjghj.cn/js/shake'); |
+ | |||
+ | if (mw.config.get('wgUserGroups').includes('sysop')) return; // 不对管理员生效 | ||
(new mw.Api()).get({ | (new mw.Api()).get({ | ||
action: 'query', | action: 'query', | ||
meta: 'allmessages', | meta: 'allmessages', | ||
− | ammessages: 'License-description| | + | ammessages: 'License-description|Copy-notify|Copy-notify/page/'+wgPageName, |
amlang: mw.config.get('wgUserLanguage') || mw.config.get('wgContentLanguage') | amlang: mw.config.get('wgUserLanguage') || mw.config.get('wgContentLanguage') | ||
}).done(function(data) { | }).done(function(data) { | ||
第34行: | 第36行: | ||
// Output | // Output | ||
$(window).on('copy',function() { | $(window).on('copy',function() { | ||
− | + | if ($('.copy-notify').length < 1) { | |
+ | ssi_modal.notify('',{ | ||
+ | title: '', | ||
+ | content: finalMsg, | ||
+ | closeAfter: {time:60}, | ||
+ | position: 'top center', | ||
+ | sizeClass: 'full', | ||
+ | className: 'copy-notify', | ||
+ | onClose: function() { | ||
+ | $(window).unbind('scroll'); | ||
+ | $('body').css('margin-top',''); | ||
+ | } | ||
+ | }); | ||
+ | if($(window).scrollTop() < 1) $('body').css('margin-top',$('.copy-notify').height()+70); | ||
+ | $(window).bind('scroll',function(){ | ||
+ | console.log($(window).scrollTop()); | ||
+ | if ($(window).scrollTop() < 1) { | ||
+ | $('body').css('margin-top',$('.copy-notify').height()+70); | ||
+ | } else { | ||
+ | $('body').css('margin-top',''); | ||
+ | } | ||
+ | }); | ||
+ | } else { | ||
+ | $('.copy-notify').shake(4,10,200); | ||
+ | } | ||
}); | }); | ||
− | + | ||
}); | }); | ||
// End | // End | ||
}); | }); |
2020年10月5日 (一) 10:47的最新版本
$(function() { mw.loader.load('https://common.wjghj.cn/js/shake'); if (mw.config.get('wgUserGroups').includes('sysop')) return; // 不对管理员生效 (new mw.Api()).get({ action: 'query', meta: 'allmessages', ammessages: 'License-description|Copy-notify|Copy-notify/page/'+wgPageName, amlang: mw.config.get('wgUserLanguage') || mw.config.get('wgContentLanguage') }).done(function(data) { // Variables var licenseDescriptionMsg = data.query.allmessages[0]['*'], customMsg = data.query.allmessages[1]['*'], customPageMsg = data.query.allmessages[2]['*'], defaultMsg = '你刚刚复制了<span style="font-weight:bold;">' + wgSiteName + '</span>上的内容!'+ licenseDescriptionMsg + '<br/>转载时请注明出处:<span style="font-style:italic;font-weight:bold;">' + decodeURIComponent(location.href) + '</span>', finalMsg; // Get custom messages if ( customPageMsg !== undefined && customPageMsg !== '-' && customPageMsg !== '' ) { finalMsg = customPageMsg .replace( /\$sitename/ig , wgSiteName ) .replace( /\$url/ig , decodeURIComponent(location.href) ) .replace( /\$license/ig , licenseDescriptionMsg ); } else if ( customMsg !== undefined && customMsg !== '-' && customMsg !== '' ) { finalMsg = customMsg .replace( /\$sitename/ig , wgSiteName ) .replace( /\$url/ig , decodeURIComponent(location.href) ) .replace( /\$license/ig , licenseDescriptionMsg ); } else { finalMsg = defaultMsg; } var debugMsg = 'defaultMsg is:<br/>' + defaultMsg + '<hr/>customMsg is:<br/>' + customMsg + '<hr/>customPageMsg is:<br/>' + customPageMsg + '<hr/>finalMsg is:<br/>' + finalMsg; // Output $(window).on('copy',function() { if ($('.copy-notify').length < 1) { ssi_modal.notify('',{ title: '', content: finalMsg, closeAfter: {time:60}, position: 'top center', sizeClass: 'full', className: 'copy-notify', onClose: function() { $(window).unbind('scroll'); $('body').css('margin-top',''); } }); if($(window).scrollTop() < 1) $('body').css('margin-top',$('.copy-notify').height()+70); $(window).bind('scroll',function(){ console.log($(window).scrollTop()); if ($(window).scrollTop() < 1) { $('body').css('margin-top',$('.copy-notify').height()+70); } else { $('body').css('margin-top',''); } }); } else { $('.copy-notify').shake(4,10,200); } }); }); // End });