打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

MediaWiki:Common.js:修订间差异

MediaWiki界面页面
更多语言
Admin留言 | 贡献
创建页面,内容为“这里的任何JavaScript将为所有用户在每次页面加载时加载。:​ mw.loader.using( "mediawiki.util" ).then( function () { var link = document.getElementById( "authorpages-link" ); if ( !link ) { return; } // Try the standard footer id used by many skins. var lastmod = document.getElementById( "footer-info-lastmod" ); if ( lastmod ) { // Move the link right after the last-modified block. var wra…”
 
Admin留言 | 贡献
无编辑摘要
 
第1行: 第1行:
/* 这里的任何JavaScript将为所有用户在每次页面加载时加载。 */
mw.loader.using( "mediawiki.util" ).then( function () {
mw.loader.using( "mediawiki.util" ).then( function () {
     var link = document.getElementById( "authorpages-link" );
     var link = document.getElementById( "authorpages-link" );
第7行: 第5行:
     }
     }


     // Try the standard footer id used by many skins.
     // Remove it from the footer where it was originally rendered
    var lastmod = document.getElementById( "footer-info-lastmod" );
     if ( link.parentNode ) {
 
         link.parentNode.removeChild( link );
     if ( lastmod ) {
        // Move the link right after the last-modified block.
        var wrapper = document.createElement( "div" );
        wrapper.id = "authorpages-under-lastmod";
         wrapper.appendChild( link );
        lastmod.parentNode.insertBefore( wrapper, lastmod.nextSibling );
        return;
     }
     }


     // Fallback for Citizen: try to find a footer / page-info area.
     // Find the page footer area (Citizen still uses a <footer> element)
     var footer = document.querySelector( ".citizen-page-info" ) || document.querySelector( "footer" );
     var footer = document.querySelector( "footer" );
     if ( !footer ) {
     if ( !footer ) {
         return;
         return;
     }
     }


     // Try to find a text node containing "Last modified" or "last edited".
     // Look for the element that contains the "This page was last edited" text
     var nodes = footer.childNodes;
     var infoElems = footer.querySelectorAll( "p, div, span, li" );
     for ( var i = 0; i < nodes.length; i++ ) {
     var lastEditedElem = null;
        var node = nodes[ i ];
        if ( node.nodeType === Node.TEXT_NODE &&
            /(Last modified|last edited)/i.test( node.textContent ) ) {


            var span = document.createElement( "div" );
    for ( var i = 0; i < infoElems.length; i++ ) {
            span.id = "authorpages-under-lastmod";
        if ( /This page was last edited/i.test( infoElems[ i ].textContent ) ) {
            span.appendChild( link );
             lastEditedElem = infoElems [ i ];
             footer.insertBefore( span, node.nextSibling );
             break;
             break;
         }
         }
     }
     }
    // If we can’t find it, just drop the link at the end of the footer
    if ( !lastEditedElem ) {
        footer.appendChild( link );
        return;
    }
    // Insert the author link *under* the "last edited" line
    var wrapper = document.createElement( "div" );
    wrapper.id = "authorpages-under-lastmod";
    wrapper.appendChild( link );
    lastEditedElem.parentNode.insertBefore( wrapper, lastEditedElem.nextSibling );
} );
} );

2025年11月22日 (六) 23:49的最新版本

mw.loader.using( "mediawiki.util" ).then( function () {
    var link = document.getElementById( "authorpages-link" );
    if ( !link ) {
        return;
    }

    // Remove it from the footer where it was originally rendered
    if ( link.parentNode ) {
        link.parentNode.removeChild( link );
    }

    // Find the page footer area (Citizen still uses a <footer> element)
    var footer = document.querySelector( "footer" );
    if ( !footer ) {
        return;
    }

    // Look for the element that contains the "This page was last edited" text
    var infoElems = footer.querySelectorAll( "p, div, span, li" );
    var lastEditedElem = null;

    for ( var i = 0; i < infoElems.length; i++ ) {
        if ( /This page was last edited/i.test( infoElems[ i ].textContent ) ) {
            lastEditedElem = infoElems [ i ];
            break;
        }
    }

    // If we can’t find it, just drop the link at the end of the footer
    if ( !lastEditedElem ) {
        footer.appendChild( link );
        return;
    }

    // Insert the author link *under* the "last edited" line
    var wrapper = document.createElement( "div" );
    wrapper.id = "authorpages-under-lastmod";
    wrapper.appendChild( link );

    lastEditedElem.parentNode.insertBefore( wrapper, lastEditedElem.nextSibling );
} );