2013-10-25 35 views
2

當我點擊黃金按鈕,然後點擊數字1024或2024或4048我寧願在正確的中間創建的元素是 此外,銀號碼和無限的免費流量目前不需要。放置正確的元素難點

jsfiddle code

youtube video

screen shot

$(function() 
{ 
    var groupTypes = null; 
    var count = 0; 
    var url = 'http://dl.dropboxusercontent.com/s/l5rijjpp8b784n2/Groups3?m'; 
    $.getJSON(url, null, function (data) 
    { 
     groupTypes = data; 
     var $list = $('<ol id="selectable" />'); 
     $.each(groupTypes, function (i, groupType) 
     { 
      var $li = $('<li />'); 
      $li 
       .addClass('ui-widget-content') 
       .attr('data-index', i) 
       .html(groupType.Name); 
      $list.append($li); 
      $li.on('click', function() 
      { 
       count++; 
       var index = $(this).attr('data-index'); 
       $(this).parent().find('li').removeClass('ui-selected'); 
       $(this).addClass('ui-selected'); 
       var speeds = groupTypes[index].GroupSpeeds; 
       console.log(speeds); 
       var $speedList = $('<ol id="selectable" />'); 
       $('.speed').remove() 
       $.each(speeds, function (i, speed) 
       { 
        if (speed) 
        { 
         var $speedLi = $('<li />'); 
         $speedLi 
          .addClass('ui-widget-content speed') 
          .attr('data-index', i) 
          .html(speed.Speed); 
         $speedList.append($speedLi); 
         $speedLi.data('speed', speed); 
         $speedLi.click(function() 
         { 
          traffic(this); 
         }); 
        } 
       }); 
       $('body').append($speedList); 
      }); 
     }); 
     $('#container').append($list); 
    }); 

    function traffic(elem) 
    { 
     var $list = $('<ol id="selectable" />'); 
     var groupTraffics = $(elem).data('speed').GroupTraffics; 
     $.each(groupTraffics, function (i, t) 
     { 
      var $li = $('<li />'); 
      $li 
       .addClass('ui-widget-content') 
       .attr('data-index', i) 
       .html(t.Traffic); 
      $list.append($li); 
      $.each(groupTraffics, function (i, groupTraffic) 
      { 
       $li.on('click', function() 
       { 
        var index = $(elem).attr('data-index'); 
        $(this).parent().find('li').removeClass('ui-selected'); 
        $(this).addClass('ui-selectd'); 
        var traffics = groupTraffic[index].Traffic; 
        var $trafficList = $('<ol id="selectable" class="traffic" />'); 
        $('.traffic').remove(); 
        $.each(traffics, function (i, traffic) 
        { 
         if (traffic) 
         { 
          var $trafficLi = $('<li />'); 
          $trafficLi 
           .addClass('ui-widget-content ') 
           .attr('data-index', i) 
           .html(traffic.Traffic); 
          $trafficList.append($trafficLi); 
         } 
        }); 
        $('body').append($trafficList); 
       }); 
       $('#container').append($list); 
      }); 
     }); 
    } 
}); 
+0

哦,我剛纔看到你的形象。讓我看看。 – Trevor

+0

你的jsfiddle不起作用。你錯過了一些CSS?也許twitter引導? – gilly3

回答

3

看看這個例子幫助。在你的交通功能,當您添加列表將其更改爲:

function traffic(elem) { 
    ....... 

    $('ol:last').after($list); 
} 

http://jsfiddle.net/vgPkU/5/