2011-06-22 93 views
1

我的代碼有問題。jQuery:點擊文字並顯示內容

我必須在點擊

<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> 

變化的文字,但我有1.單擊文本的變化,2,點擊沒有效果,當我改變

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

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

Scripst工作很好,但我必須有HTML。

有什麼建議嗎?

THX的答覆,尤

回答

2

儘量不要做這樣的:

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

更新小提琴的改變打開和關閉:

$('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; 
}); 

小提琴:http://jsfiddle.net/maniator/uUrRf/

+0

Thx爲您的答覆,但我不k現在添加此代碼的位置。 –

+0

@Viktor ...你看着小提琴嗎?把它代替'$(this).html($(this).html()== ...' – Neal