3

我正在使用 WordPress 主题,发现一个我有点困惑的问题。我正在显示不同城市的办事处列表。这是一个自定义分类法,我正在使用以下代码来显示一个无序列表的术语。

$wpz_offices = get_the_term_list( $post->ID, 'office', '<li>', '</li><li>', '</li>');
echo $wpz_offices;

它准确地显示了它应该如何但问题是我想添加一个 javascript 切换如果<li>超过5. 我对 JavaScript 的了解不够,无法实现这一点,所以这就是我寻求帮助的原因。这可以使用可用的标记吗?

所以基本上如果<ul>分类法有 4 个或更少的术语然后正常显示

  • 一个
  • b
  • C
  • d

但是如果我们有 5 个术语显示这个

查看所有办公室 点击这里

任何帮助,将不胜感激。

更新 对于那些好奇的人来说,我是如何使用答案 http://jsfiddle.net/KQBKu/的帮助的

4

2 回答 2

5

演示 http://jsfiddle.net/yGt4y/

这应该给你一个好主意。:)

API:http ://api.jquery.com/slideToggle/

代码

$(document).ready(function () {

    if ($('ul > li').length > 3) {
        $('#click').show();
        $('ul').hide();
    }

    $('#click').click(function () {
        $('ul').slideToggle();
    });
});
于 2013-10-23T03:37:26.077 回答
2

你应该试试这段代码

演示小提琴

var list = $('ul').children().size();

if(list > 4){
    $('ul').children().hide().slice(0,4).show();
    var span = $('<span>').html('show more');
    $(span).toggle(function(){
        $('ul').children().show();
        $(span).html('show less');
    }, function(){
        $(span).html('show more');
        $('ul').children().hide().slice(0,4).show();
    });
    $('ul').after(span);
}
于 2013-10-23T03:37:18.040 回答