User:Saftzie/ui.tabinsert.js

ShoutWiki — express yourself and be heard!
Jump to navigation Jump to search

Note: After saving, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Go to Menu → Settings (Opera → Preferences on a Mac) and then to Privacy & security → Clear browsing data → Cached images and files.
// insert tab for tab key event in edit areas
(function ( $ ) {
	'use strict';

	// keydown handler
	function onKeydown( e ) {
		var
			s = this.selectionStart,
			t = this.scrollTop,
			v = this.value;

		if ( e.key === 'Tab' ) {
			e.preventDefault();
			// insert a tab
			this.value =
				v.slice( 0, s ) + '\t' + v.slice( this.selectionEnd );
			this.scrollTop = t;
			this.selectionStart = this.selectionEnd = s + 1;
		}
	}

	// attach keydown handler to edit textarea
	$( '#wpTextbox1' )
		.keydown( onKeydown );
}( jQuery ));