2011-06-22 1 views
1

J'ai un problème avec mon code.jQuery: Changer le texte sur le clic et afficher le contenu

Je dois avoir un texte de changement sur un clic

<script type="text/javascript"> 
$(document).ready(function(){ 
    $('.pokus1').hide().before('<a href="#" id="toggle-example1" class="show" ><div class="nadpis"><div class="nadpis2">Zumba</div><div class="open-close">Otevřít</div></div></a>'); 


     $('a#toggle-example1').click(function() { 
     $('.pokus1').slideToggle(300); 
     $(this).html($(this).html() == 
     '<a href="#" id="toggle-example1" class="show" ><div class="nadpis"><div class="nadpis2">Zumba</div><div class="open-close">Otevřít</div></div></a>' 
     ? 
     '<a href="#" id="toggle-example1" class="show" ><div class="nadpis"><div class="nadpis2">Zumba</div><div class="open-close">Otevřít</div></div></a>' 
     : 
     '<a href="#" id="toggle-example1" class="show" ><div class="nadpis"><div class="nadpis2">Zumba</div><div class="open-close">Zavřít</div></div></a>'); 
    return false; 
    }); 
}); 

    </script> 

mais je dois 1. Cliquez sur Modifier le texte, 2. Cliquez sans effet, quand je change

  $(this).html($(this).html() == 

à $(this).text($(this).text() ==

Scripst fonctionne bien, mais je dois avoir du HTML.

un conseil?

Thx pour réponse, Viktor

Répondre

2

Essayez de faire ceci:

$('.open-close', this).toggle(function(){ 
     var html = this.innerHTML; 
     if(html != 'Otevřít'){ 
      this.innerHTML = 'Zavřít'; 
     } 
}) 

violon Mise à jour changer pour ouvrir et fermer:

$('a#toggle-example1').click(function() { 
    $('.pokus1').slideToggle(300); 
    $('.open-close', this).toggle(function() { 
     var html = this.innerHTML; 
     if (html == 'Zavřít') { 
      this.innerHTML = 'Otevřít'; 
     } 
     else if (html == 'Otevřít') { 
      this.innerHTML = 'Zavřít'; 
     } 
     this.style.display = 'block'; 
    }) 
    return false; 
}); 

Fiddle: http://jsfiddle.net/maniator/uUrRf/

+0

Merci pour votre réponse, mais je ne sais pas maintenant où ajouter ce code. –

+0

@Viktor ... avez-vous regardé le violon? mettez-le au lieu du '$ (this) .html ($ (this) .html() == ...' – Neal

Questions connexes