0

尝试了这么多不同的脚本来试图让这个工作不得不认输并问。我的 JQuery 设置是一个在 head 部分引用的外部 JS 文件,我将 JQuery 代码添加到该文件中。还有一个 Twitter Bootstrap 主题,它有自己的类和脚本。在这篇文章http://skipology.com/iphoneography-applications-most-used/上,我使用内置代码/类的 Twitter Bootstrap 创建了一些可扩展的 div。触发扩展和关闭的锚的html是:

<ul class="nav nav-tabs"><li class="active expandable"><a role="button" tabindex="0" 
data-toggle="collapse" data-target="#snapseed"><i class="icon-sort icon-large"></i> 
More...</a></li><ul>

我要做的是在 div 展开时将“更多...”文本更改为“更少...”。我尝试了各种脚本,包括添加跨度和使用 click 或 onclick 触发的 toggle() 但似乎没有任何效果。Twitter Bootstrap 有各种我可以使用的事件,而不是我认为的 click 或 onclick,例如 show: shown: hide: 和 hidden:

我认为 JQuery、Wordpress 和 Bootstrap 的组合完全让我感到困惑。我知道我可以在静态网站上做到这一点。任何人都可以想出一个脚本吗?

4

2 回答 2

0

这对我有用

    $('[data-toggle="collapse"]').click(function() {
       $(this).text($(this).text() == 'More' ? 'Less' : 'More');
 });

谷歌把我带到了这个来源

注意:我使用的是 jQuery + Bootstrap,但不是 Wordpress,所以可能会有所不同

于 2013-03-06T16:35:20.107 回答
0

尝试这个:

$('li.expandable a[data-toggle="collapse"]').on('click',function(){
    if ($($(this).data('target')).hasClass('in')){
        $(this).val(($(this).val()).replace(/More/,'Less'));
    }
    else{
        $(this).val(($(this).val()).replace(/Less/,'More'));
    }
})
于 2013-02-19T21:26:47.850 回答