2012-03-07 7 views
1

jQueryで次のように作成しようとしています:jQuery:最後のアイテムをULから新しいULに移動

私はアイテムのリスト(例:10)を持っています。アイテム数が6以上の場合は、残りのアイテム(6〜10)を新しいULにコピーしてドロップダウンメニュー構造を作成します。

メニューの最初のバージョンはhttp://jsfiddle.net/ryb7T/で、ここには10個のアイテムがあります。

jQueryの結果は、http://jsfiddle.net/hRaWt/のようになります.1〜6個のアイテムが表示され、残りのアイテム、サブメニューが新しいULになります。

答えて

3

は、このjQueryのコードを参照してください:

 
if ($("#main-ul li").length > 6) { 
    // Too many li 
    $("#main-ul") 
     .append(
      $('<li>') 
      .append('more') 
      .append($('<ul>').append($("#main-ul li").slice(5).detach())) 
      ); 
} 

そしてhereを生きます。

+0

恐ろしいです。ありがとうございました! – Lee

0

あなたはもっとして6つの要素を持っているかどうかを確認し、デフォルト

$(function() { 
    var $menuItems = $('#menu > li:visible'); 
    if ($menuItems.length > 6) 
    { 
     $('#menu > li:gt(5):not(#submenu)').appendTo('#submenu ul'); 
     $('#submenu').css('display', 'inline'); 
    } 
}); 
​ 

コードによって隠されているサブメニューに移動する必要があります。http://jsfiddle.net/hRaWt/1/

関連する問題