2011-05-18 119 views
3

我期待改变这个跨度标记的内容如何改变跨度的内容:当其他元素被点击

$('#storyBtn').click(function() { 
     $('#story-body').slideToggle('fast', function() { 
      $('#btnTextShow').hide(); 
      $('#btnTextHide').show(); 
     }); 
    }); 

回答

0

这里是如何实现一个很好的例子:在JSFiddle DEMO


首先来看看让我们看看我们在这里:

$('.ui-btn-text:eq(1)').hide(); 

$('#storyBtn').click(function() { 
    $("#story-body").slideToggle(400); 
    $(".ui-btn-text").toggle(300); 
}); 

而html:

<div id="storyBtn"> 
    <span class="ui-btn-text">Read how we have helped</span> 
    <span class="ui-btn-text">Hide Story</span> 
</div> 

<div id="story-body"> 
    A long,...<br> long time ago... 
</div> 

信息:

正如你可以看到我简化并删除了所有不必要的ID和代码只是为了让可见性如何简单。您可以重做我的这些更改。

+0

谢谢! roXon这帮了很多 – TikaL13 2011-05-18 17:47:27

+0

我很高兴它。谢谢 – 2011-05-18 17:51:53

0

我觉得你只是想更新跨度的文字...如果是的话试试这个 - >

<span class="ui-btn-text" id="btnText">Read how we have helped</span> 

    $('#storyBtn').click(function() { 
      $('#story-body').slideToggle('fast', function() { 
       $('#btnText').text("Hide Story"); 
       $('#btnTextShow').hide(); 
       $('#btnTextHide').show(); 
      }); 
     }); 

*未经测试

+0

这不是2跨度。这是两个不同的文本的1跨度。当然,最好有两个跨度,但加载时必须隐藏一个 – mplungjan 2011-05-18 16:53:52

+0

行 - 我已经更新,只更新内容 - 但OP使用的show()和hide()函数让我相信他们是使用2跨度.... – ManseUK 2011-05-18 16:54:33

+0

呃好 - 在再次阅读...似乎显示和隐藏应该在那里...随着文本的更新.... – ManseUK 2011-05-18 16:57:03

相关问题