MediaWiki:Gadget-HeadingLink.js: Unterschied zwischen den Versionen
Aus Offene Naturführer BiolFlor
K (+talk namespaces) |
K (fix heading link) |
||
Zeile 1: | Zeile 1: | ||
− | // < | + | // <syntaxhighlight lang="javascript"> |
− | / | + | /** |
− | + | * This JavaScript will be loaded only for some pages, see MediaWiki:Common.js | |
− | + | * This program is free software; you can redistribute it and/or modify it under the terms of | |
− | + | * the EUPL v.1.1 or (at your option) the GNU General Public License as published by the Free | |
− | + | * Software Foundation; either GPL v.3 or (at your option) any later version. This program is | |
− | + | * distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the | |
− | + | * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General | |
− | + | * Public License (http://www.gnu.org/licenses/) for more details. | |
− | + | * Author: A. Plank | |
+ | * @description add a link of the section while hovering it | ||
+ | * @requires jqueryEscapeId() | ||
+ | * @requires $.jI18n | ||
+ | * @requires $.resource() | ||
*/ | */ | ||
− | /* | + | /*jslint sloppy: true, indent: 2, white: true */ |
− | /* | + | /*global clearInterval: false, clearTimeout: false, document: false, event: false, frames: false, history: false, Image: false, location: false, name: false, navigator: false, Option: false, parent: false, screen: false, setInterval: false, setTimeout: false, window: false, XMLHttpRequest: false, $: false, mw: false */ |
− | + | ||
− | */ | + | |
switch (mw.config.get( 'wgNamespaceNumber' )) { | switch (mw.config.get( 'wgNamespaceNumber' )) { | ||
case 0: // main namespace | case 0: // main namespace | ||
− | case 1: // | + | case 1: // discussion namespace |
case 2: // user namespace | case 2: // user namespace | ||
− | |||
case 10: // template namespace | case 10: // template namespace | ||
− | |||
case 12: // help namespace | case 12: // help namespace | ||
− | |||
case 200: // portal namespace | case 200: // portal namespace | ||
− | if ($ | + | if ($('h1,h2,h3,h4').length) { |
− | $ | + | $('h1,h2,h3,h4').mouseenter(function () { |
− | hrefID = $ | + | hrefID = $(this).find('.mw-headline').attr('id'); hrefID = hrefID === 'undefined' ? false : hrefID; |
− | + | hasCurRevisionId = (mw.config.get( 'wgCurRevisionId') ? true : false); | |
− | hasCurRevisionId = mw.config.get( 'wgCurRevisionId') ? true : false; | + | tmpArtilePath = (mw.config.get( 'wgServer') + |
− | tmpArtilePath = mw.config.get( 'wgServer') + | + | mw.config.get( 'wgArticlePath').replace(/\$1/, mw.config.get( 'wgPageName'))); |
− | mw.config.get( 'wgArticlePath').replace(/\$1/, mw.config.get( 'wgPageName')) ; | + | |
msgBoxHeadinglink = '<div id=linkmsg_' + hrefID + ' style=display:none class=js-messagebox >' + | msgBoxHeadinglink = '<div id=linkmsg_' + hrefID + ' style=display:none class=js-messagebox >' + | ||
( $.jI18n.en.toolTipHeadingLinkHelp ? $.resource('toolTipHeadingLinkHelp') : '(1) Normal link to this head line or (2) the permanent link with version number:' ) + | ( $.jI18n.en.toolTipHeadingLinkHelp ? $.resource('toolTipHeadingLinkHelp') : '(1) Normal link to this head line or (2) the permanent link with version number:' ) + | ||
Zeile 37: | Zeile 35: | ||
( hasCurRevisionId ? '<li>' + tmpArtilePath + '?oldid=' + mw.config.get('wgCurRevisionId') + ( hrefID ? '#' + hrefID : '' ) + '</li>' : '') + | ( hasCurRevisionId ? '<li>' + tmpArtilePath + '?oldid=' + mw.config.get('wgCurRevisionId') + ( hrefID ? '#' + hrefID : '' ) + '</li>' : '') + | ||
'</ol></div>'; | '</ol></div>'; | ||
− | + | $(this).append(' ' | |
− | + '<span ' + | + | + '<span ' + |
' class="headinglink" ' + | ' class="headinglink" ' + | ||
' onclick="' + | ' onclick="' + | ||
− | '$ | + | '$(this).parent().before( msgBoxHeadinglink );' + |
− | '$ | + | '$(jqueryEscapeId(\'#linkmsg_' + hrefID + '\'))' + |
− | + | '.slideDown(\'slow\', function() {$(this).addClass(\'is-shown\');} )' + | |
+ | '.mouseleave (function () {if($(this).hasClass(\'is-shown\')) {$(this).slideUp(\'slow\', function () {$(this).remove();return false;});return false;} });' + | ||
'"' + | '"' + | ||
' style="color:#CCCCCC; margin-left:0.2em;" ' + | ' style="color:#CCCCCC; margin-left:0.2em;" ' + | ||
Zeile 51: | Zeile 50: | ||
+ '</span>'); | + '</span>'); | ||
}).mouseleave(function () { | }).mouseleave(function () { | ||
− | $ | + | $(this).find('span.headinglink').remove(); |
}); | }); | ||
} | } | ||
break; | break; | ||
} | } | ||
− | // </ | + | // </syntaxhighlight> |
Aktuelle Version vom 13. Juni 2014, 16:21 Uhr
// <syntaxhighlight lang="javascript">
/**
* This JavaScript will be loaded only for some pages, see MediaWiki:Common.js
* This program is free software; you can redistribute it and/or modify it under the terms of
* the EUPL v.1.1 or (at your option) the GNU General Public License as published by the Free
* Software Foundation; either GPL v.3 or (at your option) any later version. This program is
* distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
* Public License (http://www.gnu.org/licenses/) for more details.
* Author: A. Plank
* @description add a link of the section while hovering it
* @requires jqueryEscapeId()
* @requires $.jI18n
* @requires $.resource()
*/
/*jslint sloppy: true, indent: 2, white: true */
/*global clearInterval: false, clearTimeout: false, document: false, event: false, frames: false, history: false, Image: false, location: false, name: false, navigator: false, Option: false, parent: false, screen: false, setInterval: false, setTimeout: false, window: false, XMLHttpRequest: false, $: false, mw: false */
switch (mw.config.get( 'wgNamespaceNumber' )) {
case 0: // main namespace
case 1: // discussion namespace
case 2: // user namespace
case 10: // template namespace
case 12: // help namespace
case 200: // portal namespace
if ($('h1,h2,h3,h4').length) {
$('h1,h2,h3,h4').mouseenter(function () {
hrefID = $(this).find('.mw-headline').attr('id'); hrefID = hrefID === 'undefined' ? false : hrefID;
hasCurRevisionId = (mw.config.get( 'wgCurRevisionId') ? true : false);
tmpArtilePath = (mw.config.get( 'wgServer') +
mw.config.get( 'wgArticlePath').replace(/\$1/, mw.config.get( 'wgPageName')));
msgBoxHeadinglink = '<div id=linkmsg_' + hrefID + ' style=display:none class=js-messagebox >' +
( $.jI18n.en.toolTipHeadingLinkHelp ? $.resource('toolTipHeadingLinkHelp') : '(1) Normal link to this head line or (2) the permanent link with version number:' ) +
'<ol>' +
'<li>' + tmpArtilePath + ( hrefID ? '#' + hrefID : '' ) + '</li>' +
( hasCurRevisionId ? '<li>' + tmpArtilePath + '?oldid=' + mw.config.get('wgCurRevisionId') + ( hrefID ? '#' + hrefID : '' ) + '</li>' : '') +
'</ol></div>';
$(this).append(' '
+ '<span ' +
' class="headinglink" ' +
' onclick="' +
'$(this).parent().before( msgBoxHeadinglink );' +
'$(jqueryEscapeId(\'#linkmsg_' + hrefID + '\'))' +
'.slideDown(\'slow\', function() {$(this).addClass(\'is-shown\');} )' +
'.mouseleave (function () {if($(this).hasClass(\'is-shown\')) {$(this).slideUp(\'slow\', function () {$(this).remove();return false;});return false;} });' +
'"' +
' style="color:#CCCCCC; margin-left:0.2em;" ' +
' title="' + ( $.jI18n.en.toolTipHeadingLink ? $.resource('toolTipHeadingLink') : 'Click to get a (permanent) link of this headline' ) + '" ' +
' >'
+ '<img src="http://species-id.net/o/media/f/f9/Button-sprite_link-pale.png" style="vertical-align:middle;" width="16" height="16">'
+ '</span>');
}).mouseleave(function () {
$(this).find('span.headinglink').remove();
});
}
break;
}
// </syntaxhighlight>