不使用排序数组的动态列表排序

时间:2013-10-18 07:32:20

标签: javascript jquery

我正在考虑使用某种算法来执行动态数组排序列表,但这个http://jsfiddle.net/Hms7Y/1/似乎能够用更干净的代码解决我的问题。但是还有很少的工作要做。

$(document).ready(function() {
  $('button').click(function() {
    var lvl = $('select').val();
    var ref = $('li.level' + lvl).last();
    $('<li class="level" '+ lvl + '>' + lvl + ' </li>').insertAfter(ref);
  });
});

如果最初我没有任何HTML标记,那么我现在的用处是使用3 if语句来检查当用户插入li时它是否是第一个li。还有其他更好的方法吗?

1 个答案:

答案 0 :(得分:1)

试试这个jsFiddle

$(document).ready(function() {
  $('button').click(function() {
    var lvl = $('select').val();
    var ref = $('li.level' + lvl).last();
    var newLi =  $('<li class="level'+ lvl + '">' + lvl + ' </li>');

    (ref.length > 0) ? newLi.insertAfter(ref) : $("ul").append(newLi);
  });
});

或者像这样jsFiddle

(ref.length > 0) ? ref.after(newLi) : $("ul").append(newLi);