3

WordPress テーマで作業していて、少し混乱している問題を見つけました。さまざまな都市のオフィスのリストを表示しています。これはカスタム分類法であり、次のコードを使用して、順序付けられていない用語のリストを表示しています。

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

<li>そして、それは本来あるべき姿を正確に表示しますが、問題は、が を超える場合に JavaScript トグルを追加したいということです5。私はこれを実装するのに JavaScript について十分に知らないので、助けを求めています。これは利用可能なマークアップを使用して可能ですか?

基本的<ul>に、タクソノミーの用語が4つ以下の場合、通常は表示されます

  • a
  • 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 に答える