МедиаУики:Gadget-copySectionLink.js

Ескерту: Сақтағаннан кейін өзгерістерді көру үшін браузеріңіздің бүркемесін (кэшін) тазарту керек болуы мүмкін.

  • Firefox / Safari: Қайта жүктеуді нұқығанда  Shift пернесін басып тұрыңыз немесе Ctrl+F5 не Ctrl+ Shift+R екеуінің біреуін басыңыз
    (Mac — +R)
  • Google Chrome: Ctrl+ Shift+R басыңыз (Mac — + Shift+R)
  • Internet Explorer: Жаңарту батырмасын нұқығанда Ctrl пернесін басып тұрыңыз немесе Ctrl+F5 басыңыз, не F5 пернесін басыңыз
  • Opera: Құралдар → Бапталымдар дегеннен бүркемесін тазарту керек.
function copySectionLink() {
	if ( $( '#copyAnchor' ).is( ':visible' ) ) {
		return;
	}
	// A span.mw-headline id-ja emberi fogyasztásra alkalmas (pl. #Első_fejezet)
	var headerText = $( this ).siblings( '.mw-headline' ).attr( 'id' ).replace( /_/g, ' ' )
		.replace( /\[/g, '[' ).replace( /\]/g, ']' );
	
	var copyText = mw.config.get( 'wgPageName' ).replace( /_/g, ' ' ) + '#' + headerText;
	
	if ( window.clipboardData ) {
		// IE
		window.clipboardData.setData( 'Text', copyText );
	} else {
		$( this ).parent().append(
			$( "<span id='copyAnchor'>" ).append(
				$( '<input>' ).attr( 'size', copyText.length )
					.val( copyText )
					.click( function () { this.select() } ),
				$( '<input>' ).attr( 'type', 'button' )
					.val( 'OK' )
					.click( function () { $( '#copyAnchor' ).remove() } )
	        )
		);
	}
}

function setupCopySectionLink( $content ) {
	$( 'h1,h2,h3,h4,h5,h6', $content ).has( '.mw-headline' ).each( function () {
		$( '<span class="copysectionlink">#</span>' )
			.appendTo( this )
			.attr( 'title', 'Бөлімнің уики сілтемесін көшіріп алу' )
			.click( copySectionLink );
	} );
}

mw.hook( 'wikipage.content' ).add( setupCopySectionLink );