js copy with code example

Example: js copy to clipboard cross browser

/** copy text to the clipboard */
function copy2clipboard( text, callback /* optional */ ) {

	// use modern clipboard API
	if ( navigator.clipboard ) {
		navigator.clipboard.writeText( text )
		.then( function(){
			// if a callback is provided, call it
			callback && callback();
		}).catch( function( err ){
			errorMessage( err );
		}); 
	}
	// use old document.execCommand('copy')
	else {

		// create a temporary textArea containing the text
		var textArea = document.createElement( 'textarea' );
		textArea.setAttribute( 'style', 'width:1px;border:0;opacity:0;' );
		document.body.appendChild( textArea );
		textArea.value = text;

		// select the textArea
		textArea.select();

		try {

			// copy from textArea
			var isCopied = document.execCommand('copy');

			// if copy was successful, and a callback is provided, call it. if copy failed, display error message
			isCopied ? ( callback && callback() ) : errorMessage();

		} 
		catch( err ) {
			errorMessage( err );
		}
		// remove temporary textArea
		document.body.removeChild( textArea );
	}

	/** display error message */
	function errorMessage( err ) { 
		alert( 'Copy to clipboard failed ' + ( err || '' ) ) 
	};
    
}

Tags:

Html Example