wp/wp-admin/js/custom-background.js
changeset 7 cf61fcea0001
parent 5 5e2f62d02dcd
child 9 177826044cd9
--- a/wp/wp-admin/js/custom-background.js	Tue Jun 09 11:14:17 2015 +0000
+++ b/wp/wp-admin/js/custom-background.js	Mon Oct 14 17:39:30 2019 +0200
@@ -1,9 +1,24 @@
 /* global ajaxurl */
+
+/**
+ * @summary Registers all events for customizing the background.
+ *
+ * @since 3.0.0
+ *
+ * @requires jQuery
+ */
 (function($) {
 	$(document).ready(function() {
 		var frame,
 			bgImage = $( '#custom-background-image' );
 
+		/**
+		 * @summary Instantiates the WordPress color picker and binds the change and clear events.
+		 *
+		 * @since 3.5.0
+		 *
+		 * @returns {void}
+		 */
 		$('#background-color').wpColorPicker({
 			change: function( event, ui ) {
 				bgImage.css('background-color', ui.color.toString());
@@ -13,14 +28,57 @@
 			}
 		});
 
-		$('input[name="background-position-x"]').change(function() {
-			bgImage.css('background-position', $(this).val() + ' top');
+		/**
+		 * @summary Alters the background size CSS property whenever the background size input has changed.
+		 *
+		 * @since 4.7.0
+		 *
+		 * @returns {void}
+		 */
+		$( 'select[name="background-size"]' ).change( function() {
+			bgImage.css( 'background-size', $( this ).val() );
+		});
+
+		/**
+		 * @summary Alters the background position CSS property whenever the background position input has changed.
+		 *
+		 * @since 4.7.0
+		 *
+		 * @returns {void}
+		 */
+		$( 'input[name="background-position"]' ).change( function() {
+			bgImage.css( 'background-position', $( this ).val() );
 		});
 
-		$('input[name="background-repeat"]').change(function() {
-			bgImage.css('background-repeat', $(this).val());
+		/**
+		 * @summary Alters the background repeat CSS property whenever the background repeat input has changed.
+		 *
+		 * @since 3.0.0
+		 *
+		 * @returns {void}
+		 */
+		$( 'input[name="background-repeat"]' ).change( function() {
+			bgImage.css( 'background-repeat', $( this ).is( ':checked' ) ? 'repeat' : 'no-repeat' );
 		});
 
+		/**
+		 * @summary Alters the background attachment CSS property whenever the background attachment input has changed.
+		 *
+		 * @since 4.7.0
+		 *
+		 * @returns {void}
+		 */
+		$( 'input[name="background-attachment"]' ).change( function() {
+			bgImage.css( 'background-attachment', $( this ).is( ':checked' ) ? 'scroll' : 'fixed' );
+		});
+
+		/**
+		 * @summary Binds the event for opening the WP Media dialog.
+		 *
+		 * @since 3.5.0
+		 *
+		 * @returns {void}
+		 */
 		$('#choose-from-library-link').click( function( event ) {
 			var $el = $(this);
 
@@ -46,13 +104,21 @@
 				button: {
 					// Set the text of the button.
 					text: $el.data('update'),
-					// Tell the button not to close the modal, since we're
-					// going to refresh the page when the image is selected.
+					/*
+					 * Tell the button not to close the modal, since we're
+					 * going to refresh the page when the image is selected.
+					 */
 					close: false
 				}
 			});
 
-			// When an image is selected, run a callback.
+			/**
+			 * @summary When an image is selected, run a callback.
+			 *
+			 * @since 3.5.0
+			 *
+			 * @returns {void}
+ 			 */
 			frame.on( 'select', function() {
 				// Grab the selected attachment.
 				var attachment = frame.state().get('selection').first();