jQuery - Manipulación DOM
JQuery proporciona métodos para manipular DOM de manera eficiente. No es necesario escribir código grande para modificar el valor del atributo de ningún elemento o para extraer código HTML de un párrafo o división.
JQuery proporciona métodos como .attr (), .html () y .val () que actúan como captadores, recuperando información de los elementos DOM para su uso posterior.
Manipulación de contenido
los html( ) El método obtiene el contenido html (innerHTML) del primer elemento coincidente.
Aquí está la sintaxis del método:
selector.html( )
Ejemplo
A continuación se muestra un ejemplo que utiliza los métodos .html () y .text (val). Aquí .html () recupera contenido HTML del objeto y luego el método .text (val) establece el valor del objeto usando el parámetro pasado -
<html>
   <head>
      <title>The jQuery Example</title>
      <script type = "text/javascript" 
         src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
      </script>
		
      <script type = "text/javascript" language = "javascript">
         $(document).ready(function() {
            $("div").click(function () {
               var content = $(this).html();
               $("#result").text( content );
            });
         });
      </script>
		
      <style>
         #division{ margin:10px;padding:12px; border:2px solid #666; width:60px;}
      </style>
   </head>
	
   <body>
      <p>Click on the square below:</p>
      <span id = "result"> </span>
		
      <div id = "division" style = "background-color:blue;">
         This is Blue Square!!
      </div>
   </body>
</html>
Esto producirá el siguiente resultado:
Reemplazo del elemento DOM
Puede reemplazar un elemento DOM completo con los elementos HTML o DOM especificados. losreplaceWith( content ) El método sirve muy bien para este propósito.
Aquí está la sintaxis del método:
selector.replaceWith( content )
Aquí el contenido es lo que quieres tener en lugar del elemento original. Puede ser HTML o texto simple.
Ejemplo
A continuación se muestra un ejemplo que reemplazaría el elemento de división con "<h1> JQuery is Great </h1>" -
<html>
   <head>
      <title>The jQuery Example</title>
      <script type = "text/javascript" 
         src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
      </script>
		
      <script type = "text/javascript" language = "javascript">
         $(document).ready(function() {
            $("div").click(function () {
               $(this).replaceWith("<h1>JQuery is Great</h1>");
            });
         });
      </script>
		
      <style>
         #division{ margin:10px;padding:12px; border:2px solid #666; width:60px;}
      </style>
   </head>
	
   <body>
      <p>Click on the square below:</p>
      <span id = "result"> </span>
		
      <div id = "division" style = "background-color:blue;">
         This is Blue Square!!
      </div>
   </body>
</html>
Esto producirá el siguiente resultado:
Eliminar elementos DOM
Puede haber una situación en la que desee eliminar uno o más elementos DOM del documento. JQuery proporciona dos métodos para manejar la situación.
los empty( ) método elimina todos los nodos secundarios del conjunto de elementos coincidentes donde como método remove( expr ) El método elimina todos los elementos coincidentes del DOM.
Aquí está la sintaxis del método:
selector.remove( [ expr ])
or 
selector.empty( )
Puede pasar el parámetro opcional expr para filtrar el conjunto de elementos que se eliminarán.
Ejemplo
A continuación se muestra un ejemplo en el que los elementos se eliminan tan pronto como se hace clic en ellos:
<html>
   <head>
      <title>The jQuery Example</title>
      <script type = "text/javascript" 
         src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
      </script>
		
      <script type = "text/javascript" language = "javascript">
         $(document).ready(function() {
            $("div").click(function () {
               $(this).remove( );
            });
         });
      </script>
		
      <style>
         .div{ margin:10px;padding:12px; border:2px solid #666; width:60px;}
      </style>
   </head>
	
   <body>
      <p>Click on any square below:</p>
      <span id = "result"> </span>
		
      <div class = "div" style = "background-color:blue;"></div>
      <div class = "div" style = "background-color:green;"></div>
      <div class = "div" style = "background-color:red;"></div>
   </body>
</html>
Esto producirá el siguiente resultado:
Insertar elementos DOM
Puede haber una situación en la que desee insertar uno o más elementos DOM nuevos en su documento existente. JQuery proporciona varios métodos para insertar elementos en varias ubicaciones.
los after( content ) método inserta contenido después de cada uno de los elementos coincidentes donde como método before( content ) El método inserta contenido antes de cada uno de los elementos coincidentes.
Aquí está la sintaxis del método:
selector.after( content )
or
selector.before( content )
Aquí el contenido es lo que desea insertar. Puede ser HTML o texto simple.
Ejemplo
A continuación se muestra un ejemplo en el que se insertan elementos <div> justo antes del elemento en el que se hace clic:
<html>
   <head>
      <title>The jQuery Example</title>
      <script type = "text/javascript" 
         src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
      </script>
		
      <script type = "text/javascript" language = "javascript">
         $(document).ready(function() {
            $("div").click(function () {
               $(this).before('<div class="div"></div>' );
            });
         });
      </script>
		
      <style>
         .div{ margin:10px;padding:12px; border:2px solid #666; width:60px;}
      </style>
   </head>
	
   <body>
      <p>Click on any square below:</p>
      <span id = "result"> </span>
		
      <div class = "div" style = "background-color:blue;"></div>
      <div class = "div" style = "background-color:green;"></div>
      <div class = "div" style = "background-color:red;"></div>
   </body>
</html>
Esto producirá el siguiente resultado:
Métodos de manipulación DOM
La siguiente tabla enumera todos los métodos que puede usar para manipular elementos DOM:
| No Señor. | Método y descripción | 
|---|---|
| 1 | después (contenido)
 Inserte contenido después de cada uno de los elementos coincidentes.  | 
| 2 | 
añadir (contenido)
 Agrega contenido al interior de cada elemento coincidente.  | 
| 3 | appendTo (selector)
 Agregue todos los elementos coincidentes a otro conjunto de elementos especificado.  | 
| 4 | antes (contenido)
 Inserte contenido antes de cada uno de los elementos coincidentes.  | 
| 5 | clon (bool)
 Clone los elementos DOM coincidentes y todos sus controladores de eventos, y seleccione los clones.  | 
| 6 | clon ()
 Clonar elementos DOM coincidentes y seleccionar los clones.  | 
| 7 | vacío ()
 Elimine todos los nodos secundarios del conjunto de elementos coincidentes.  | 
| 8 | html (val)
 Establezca el contenido html de cada elemento coincidente.  | 
| 9 | html ()
 Obtenga el contenido html (innerHTML) del primer elemento coincidente.  | 
| 10 | insertAfter (selector)
 Inserte todos los elementos coincidentes después de otro conjunto de elementos especificado.  | 
| 11 | insertBefore (selector)
 Inserte todos los elementos coincidentes antes de otro conjunto de elementos especificado.  | 
| 12 | anteponer (contenido)
 Añada contenido al interior de cada elemento coincidente.  | 
| 13 | prependTo (selector)
 Anteponer todos los elementos coincidentes a otro conjunto de elementos especificado.  | 
| 14 | eliminar (expr)
 Elimina todos los elementos coincidentes del DOM.  | 
| 15 | replaceAll (selector)
 Reemplaza los elementos emparejados por el selector especificado con los elementos emparejados.  | 
| dieciséis | replaceWith (contenido)
 Reemplaza todos los elementos coincidentes con los elementos HTML o DOM especificados.  | 
| 17 | texto (val)
 Establezca el contenido de texto de todos los elementos coincidentes.  | 
| 18 | texto ()
 Obtenga el contenido de texto combinado de todos los elementos coincidentes.  | 
| 19 | envolver (elem)
 Envuelva cada elemento coincidente con el elemento especificado.  | 
| 20 | envolver (html)
 Envuelva cada elemento coincidente con el contenido HTML especificado.  | 
| 21 | wrapAll (elem)
 Envuelva todos los elementos del conjunto combinado en un solo elemento contenedor.  | 
| 22 | wrapAll (html)
 Envuelva todos los elementos del conjunto combinado en un solo elemento contenedor.  | 
| 23 | wrapInner (elem)
 Envuelva el contenido secundario interno de cada elemento coincidente (incluidos los nodos de texto) con un elemento DOM.  | 
| 24 | wrapInner (html)
 Envuelva el contenido secundario interno de cada elemento coincidente (incluidos los nodos de texto) con una estructura HTML.  |