MediaWiki:Common.js:修订间差异
外观
| 第1行: | 第1行: | ||
mw.loader.using( 'mediawiki.util', function () { | |||
$( document ).ready( function () { | |||
// 匹配所有用户链接(User: 和 用户: 命名空间) | |||
$( 'a[href*="/wiki/User:"], a[href*="/wiki/%E7%94%A8%E6%88%B7:"]' ).each( function () { | |||
var $link = $( this ); | |||
// 避免重复添加头像 | |||
if ( $link.prev( '.sp-avatar-wrapper' ).length ) { | |||
return; | |||
} | |||
// 从链接中提取用户名 | |||
var href = $link.attr( 'href' ); | |||
var userName = decodeURIComponent( href.split( '/wiki/' )[1] ).replace( /^User:|^用户:/, '' ); | |||
// 构造一个临时div来解析头像HTML | |||
var $tempDiv = $( '<div>' ); | |||
// 使用MediaWiki的API来解析 {{#avatar:用户名}} | |||
new mw.Api().get( { | |||
action: 'parse', | |||
text: '{{#avatar:' + userName + '}}', | |||
contentmodel: 'wikitext', | |||
disablelimitreport: true, | |||
disableeditsection: true | |||
} ).done( function ( data ) { | |||
if ( data.parse && data.parse.text ) { | |||
var avatarHtml = data.parse.text[ '*' ]; | |||
// 把头像插入到链接前面 | |||
var $avatarWrapper = $( '<span class="sp-avatar-wrapper" style="vertical-align: middle; margin-right: 4px; display: inline-block;"></span>' ).html( avatarHtml ); | |||
$link.before( $avatarWrapper ); | |||
} | |||
} ); | |||
} ); | |||
} ); | |||
} ); | |||
2026年2月25日 (三) 13:32的版本
mw.loader.using( 'mediawiki.util', function () {
$( document ).ready( function () {
// 匹配所有用户链接(User: 和 用户: 命名空间)
$( 'a[href*="/wiki/User:"], a[href*="/wiki/%E7%94%A8%E6%88%B7:"]' ).each( function () {
var $link = $( this );
// 避免重复添加头像
if ( $link.prev( '.sp-avatar-wrapper' ).length ) {
return;
}
// 从链接中提取用户名
var href = $link.attr( 'href' );
var userName = decodeURIComponent( href.split( '/wiki/' )[1] ).replace( /^User:|^用户:/, '' );
// 构造一个临时div来解析头像HTML
var $tempDiv = $( '<div>' );
// 使用MediaWiki的API来解析 {{#avatar:用户名}}
new mw.Api().get( {
action: 'parse',
text: '{{#avatar:' + userName + '}}',
contentmodel: 'wikitext',
disablelimitreport: true,
disableeditsection: true
} ).done( function ( data ) {
if ( data.parse && data.parse.text ) {
var avatarHtml = data.parse.text[ '*' ];
// 把头像插入到链接前面
var $avatarWrapper = $( '<span class="sp-avatar-wrapper" style="vertical-align: middle; margin-right: 4px; display: inline-block;"></span>' ).html( avatarHtml );
$link.before( $avatarWrapper );
}
} );
} );
} );
} );