<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Amosar_e_ocultar_elementos</id>
	<title>Amosar e ocultar elementos - Historial de revisiones</title>
	<link rel="self" type="application/atom+xml" href="https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Amosar_e_ocultar_elementos"/>
	<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Amosar_e_ocultar_elementos&amp;action=history"/>
	<updated>2026-10-22T00:45:26Z</updated>
	<subtitle>Historial de revisiones de esta página en la wiki</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://manuais.iessanclemente.net/index.php?title=Amosar_e_ocultar_elementos&amp;diff=52465&amp;oldid=prev</id>
		<title>Veiga: /* Exemplo dunha lista desplegable con jQuery */</title>
		<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Amosar_e_ocultar_elementos&amp;diff=52465&amp;oldid=prev"/>
		<updated>2015-01-26T13:12:14Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Exemplo dunha lista desplegable con jQuery&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Un dos efectos dinámicos que máis se soen empregar consiste na ocultación ou visualización dun elemento ou grupos de elementos. &lt;br /&gt;
&lt;br /&gt;
jQuery dispón de múltiples comandos para facer animacións ou efectos á hora de amosar ou ocultar os elementos, pero imos comenzar cos máis sinxelos:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;show()&amp;#039;&amp;#039;&amp;#039;: para amosar os elementos.&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;hide()&amp;#039;&amp;#039;&amp;#039;: para ocultar os elementos.&lt;br /&gt;
&lt;br /&gt;
Teremos que ter en conta o seguinte jQuery oculta ou amosa os elementos modificando o valor da propiedade &amp;#039;&amp;#039;&amp;#039;display&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Exemplos:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
Partimos do seguinte código HTML:&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;div style=&amp;quot;display:none;&amp;quot;&amp;gt;Este texto estará oculto&amp;lt;/div&amp;gt;&lt;br /&gt;
   &amp;lt;div&amp;gt;Este texto é visible&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si lle aplicamos: &lt;br /&gt;
&lt;br /&gt;
   $(&amp;quot;div&amp;quot;).hide().addClass(&amp;quot;fun&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
obteremos como resultado o seguinte código HTML:&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;div style=&amp;quot;display:none;&amp;quot; class=&amp;quot;fun&amp;quot;&amp;gt;Este texto estará oculto&amp;lt;/div&amp;gt;&lt;br /&gt;
   &amp;lt;div style=&amp;quot;display:none;&amp;quot; class=&amp;quot;fun&amp;quot;&amp;gt;Este texto é visible&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si un elemento é programado como oculto (&amp;#039;&amp;#039;&amp;#039;hidden&amp;#039;&amp;#039;&amp;#039;) empregando a propiedade display igual a &amp;#039;&amp;#039;&amp;#039;none&amp;#039;&amp;#039;&amp;#039;, o comando &amp;#039;&amp;#039;&amp;#039;show()&amp;#039;&amp;#039;&amp;#039;  sempre modificará a súa propiedade display a &amp;#039;&amp;#039;&amp;#039;block&amp;#039;&amp;#039;&amp;#039;, aínda que o elemento teña por defecto a propiedade &amp;#039;&amp;#039;&amp;#039;inline&amp;#039;&amp;#039;&amp;#039; tal e como o faría por exemplo un &amp;#039;&amp;#039;&amp;#039;span&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Se o elemento comenza cunha propiedade display explícita e empregamos &amp;#039;&amp;#039;&amp;#039;hide()&amp;#039;&amp;#039;&amp;#039; para oculta-lo, o comando &amp;#039;&amp;#039;&amp;#039;show()&amp;#039;&amp;#039;&amp;#039; recordará o valor display orixinal e o devolverá a este valor.&lt;br /&gt;
&lt;br /&gt;
{{alerta|Recomendación|&lt;br /&gt;
&lt;br /&gt;
Polo tanto é unha boa idea non empregar atributos de estilo nos elementos que queremos ter inicialmente ocultos. Aplicarémoslle o comando &amp;#039;&amp;#039;&amp;#039;hide()&amp;#039;&amp;#039;&amp;#039; na función de cargar do documento: &amp;#039;&amp;#039;&amp;#039;$(document).ready(function(){....});&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Isto evita que estes elementos sexan amosados ó cliente, e fai además que sepamos con seguridade o estado inicial do elemento, para non ter problemas ó aplicarlles operacións de show() e hide().}}&lt;br /&gt;
&lt;br /&gt;
=== Exemplo dunha lista desplegable con jQuery ===&lt;br /&gt;
&lt;br /&gt;
Imos a facer a seguinte lista desplegable:&lt;br /&gt;
&lt;br /&gt;
[[Imagen:Lista-1.png]]&lt;br /&gt;
[[Imagen:Lista-2.png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE html&amp;gt;&lt;br /&gt;
&amp;lt;html lang=&amp;quot;es&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
  &amp;lt;meta charset=&amp;quot;UTF-8&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;Lista desplegable&amp;lt;/title&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;style&amp;gt;&lt;br /&gt;
    fieldset {&lt;br /&gt;
      margin-bottom: 12px;&lt;br /&gt;
      border-color: #00457b;&lt;br /&gt;
      background-color: #CCFF66;&lt;br /&gt;
    }&lt;br /&gt;
    legend {&lt;br /&gt;
      border: 2px ridge #00457b;&lt;br /&gt;
      font-weight: bold;&lt;br /&gt;
      background-color: #00CCCC;&lt;br /&gt;
      color: white;&lt;br /&gt;
      padding: 2px 16px;&lt;br /&gt;
    }&lt;br /&gt;
  &amp;lt;/style&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
  &amp;lt;fieldset&amp;gt;&lt;br /&gt;
    &amp;lt;legend&amp;gt;Lista desplegable&amp;lt;/legend&amp;gt;&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt;Elemento 1&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt;Elemento 2&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt; Elemento 3&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
          &amp;lt;li&amp;gt;Elemento 3.1&amp;lt;/li&amp;gt;&lt;br /&gt;
          &amp;lt;li&amp;gt; Elemento 3.2&lt;br /&gt;
            &amp;lt;ul&amp;gt;&lt;br /&gt;
              &amp;lt;li&amp;gt;Elemento 3.2.1&amp;lt;/li&amp;gt;&lt;br /&gt;
              &amp;lt;li&amp;gt;Elemento 3.2.2&amp;lt;/li&amp;gt;&lt;br /&gt;
              &amp;lt;li&amp;gt;Elemento 3.2.3&amp;lt;/li&amp;gt;&lt;br /&gt;
            &amp;lt;/ul&amp;gt;&lt;br /&gt;
          &amp;lt;/li&amp;gt;&lt;br /&gt;
          &amp;lt;li&amp;gt;Elemento 3.3&amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
      &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt; Elemento 4&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
          &amp;lt;li&amp;gt;Elemento 4.1&amp;lt;/li&amp;gt;&lt;br /&gt;
          &amp;lt;li&amp;gt; Elemento 4.2&lt;br /&gt;
            &amp;lt;ul&amp;gt;&lt;br /&gt;
              &amp;lt;li&amp;gt;Elemento 4.2.1&amp;lt;/li&amp;gt;&lt;br /&gt;
              &amp;lt;li&amp;gt;Elemento 4.2.2&amp;lt;/li&amp;gt;&lt;br /&gt;
            &amp;lt;/ul&amp;gt;&lt;br /&gt;
          &amp;lt;/li&amp;gt;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
      &amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt;Elemento 5&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
  &amp;lt;/fieldset&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;script src=&amp;quot;http://code.jquery.com/jquery-2.1.3.min.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;script&amp;gt;&lt;br /&gt;
    $(function(){&lt;br /&gt;
      $(&amp;#039;li:has(ul)&amp;#039;).click(function(event){&lt;br /&gt;
        if (this == event.target) {&lt;br /&gt;
          if ($(this).children().is(&amp;#039;:hidden&amp;#039;)) {&lt;br /&gt;
            $(this).css(&amp;#039;list-style-image&amp;#039;,&amp;#039;url(menos.gif)&amp;#039;).children().show();&lt;br /&gt;
          }&lt;br /&gt;
          else {&lt;br /&gt;
            $(this).css(&amp;#039;list-style-image&amp;#039;,&amp;#039;url(mais.gif)&amp;#039;).children().hide();&lt;br /&gt;
          }&lt;br /&gt;
        }&lt;br /&gt;
        return false;&lt;br /&gt;
      }).css(&amp;#039;cursor&amp;#039;,&amp;#039;pointer&amp;#039;).click();&lt;br /&gt;
      &lt;br /&gt;
      &lt;br /&gt;
      $(&amp;#039;li:not(:has(ul))&amp;#039;).css({&lt;br /&gt;
        cursor: &amp;#039;default&amp;#039;,&lt;br /&gt;
        &amp;#039;list-style-image&amp;#039;:&amp;#039;none&amp;#039;&lt;br /&gt;
      });&lt;br /&gt;
    });&lt;br /&gt;
  &amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Explicación:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
A tódolos elementos da lista que teñan como algún elemento unha lista desordenada UL, programamos unha función de click. Si fixemos click no mismo elemento onde se programou o evento de click if (this == event.target), (isto nos permitirá ignorar os clicks dos elementos fillos), comprobará si os fillos están ocultos (hidden),e si é así amosará os fillos e cambiará o símbolo da lista a - .&lt;br /&gt;
&lt;br /&gt;
Noutro caso ocultará os fillos e cambiará o símbolo da lista a + .&lt;br /&gt;
&lt;br /&gt;
A continuación da función cambia o cursor do rato á man, e simula a pulsación &amp;#039;&amp;#039;&amp;#039;click()&amp;#039;&amp;#039;&amp;#039; nese elemento, para que apareza por defecto aparezan sin abrir as sublistas.&lt;br /&gt;
&lt;br /&gt;
Si o elemento da lista non ten listas desordenadas, entón pon o cursor do rato en normal, e pon o icono normal da lista.&lt;br /&gt;
&lt;br /&gt;
--[[Usuario:Veiga|Veiga]] ([[Usuario discusión:Veiga|discusión]]) 14:12 26 ene 2015 (CET)&lt;/div&gt;</summary>
		<author><name>Veiga</name></author>
	</entry>
</feed>