首页
随机
登录
设置
关于北京交通百科
免责声明
北京交通百科
搜索
查看“︁MediaWiki:Common.js”︁的源代码
←
MediaWiki:Common.js
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于这些用户组的用户执行:
用户
、
手动确认用户
此页面为本wiki上的软件提供界面文本,并受到保护以防止滥用。如欲修改所有wiki的翻译,请访问
translatewiki.net
上的MediaWiki本地化项目。
您无权编辑此JavaScript页面,因为编辑此页面可能会影响所有访问者。
您可以查看和复制此页面的源代码。
/* * MediaWiki:Common.js — 全站通用脚本 * 大事件倒计时实时更新(配合 模板:倒计时 使用) */ ( function ( mw, $ ) { 'use strict'; if ( window.dshCountdownLoaded ) { return; } window.dshCountdownLoaded = true; function esc( s ) { return String( s ) .replace( /&/g, '&' ) .replace( /</g, '<' ) .replace( />/g, '>' ) .replace( /"/g, '"' ); } // 取本地时区的"今天 00:00" function todayStart() { var d = new Date(); return new Date( d.getFullYear(), d.getMonth(), d.getDate() ); } // 解析目标日期:支持 YYYY-MM-DD(含时分秒会被忽略,只按整天算) function parseTarget( s ) { if ( !s ) { return null; } var m = String( s ).trim().match( /^(\d{4})-(\d{2})-(\d{2})/ ); if ( m ) { return new Date( +m[ 1 ], +m[ 2 ] - 1, +m[ 3 ] ); } var d = new Date( String( s ).trim().replace( ' ', 'T' ) ); return isNaN( d.getTime() ) ? null : d; } function update( $el ) { var target = parseTarget( $el.data( 'date' ) ); var $txt = $el.find( '.dsh-bigcd-txt' ); if ( !target ) { $txt.text( '(倒计时日期格式无法解析,请使用 YYYY-MM-DD)' ); return; } var ev = esc( $el.data( 'event' ) || '' ); var evTag = ev ? '<span class="dsh-bigcd-ev">' + ev + '</span>' : ''; var day = 86400000; var diff = Math.round( ( target.getTime() - todayStart().getTime() ) / day ); var num = '<span class="dsh-bigcd-num">'; if ( diff > 0 ) { $txt.html( '距离' + evTag + '还有 ' + num + diff + '</span> 天' ); } else if ( diff === 0 ) { $txt.html( evTag + '就是今天!' ); } else { $txt.html( evTag + '已经 ' + num + ( -diff ) + '</span> 天' ); } } mw.hook( 'wikipage.content' ).add( function ( $content ) { $content.find( '.dsh-bigcd' ).each( function () { var $el = $( this ); update( $el ); if ( !$el.data( 'dshTimer' ) ) { $el.data( 'dshTimer', setInterval( function () { update( $el ); }, 60000 ) ); } } ); } ); }( window.mediaWiki, jQuery ) );
返回
MediaWiki:Common.js
。