如在后台的标签列表中,实现上移、下移、置顶功能

主要实现思路是节点操作,比如说:上移,直接把点击项移动到前一个节点,以此类推,当然实际代码实现还要加些判断,如当前点击操作项是否已经是置底或置底了,如果是则给点相应提示,好让操作者知道发生了什么事情。

思路:

1、先用到的克隆方法.clone(true):

     即把当前要移动的项先保存好,备于后用。

2、找到当前标签所对应的相关元素及其相关方法:

    如:prev()当前元素上面的标签

           next()当前元素下面的标签

           after()xxx之后添加方法

           before()xxx之前添加方法

           prepend添加方法

3、实现

具体代码如:

var productsLabel = { 
  //设置置顶 
  setHot: function(t){ 
    var bar = 'showAndHide_box'; 
    var obj = $(t).parents('.'+bar).clone(true);    //复制当前标签
    $(t).parents('.'+bar).remove();                 //删除当前标签
    $(".showAndHide_list_box").prepend(obj);        //把当前标签添加到列表的最前面 实现置顶功能
  },
 
  //设置上移 
  setUp: function(t){ 
    var bar = 'showAndHide_box'; 
    if($(t).parents('.'+ bar).prev('.'+bar).html() != undefined){ 
      var obj = $(t).parents('.'+bar).clone(true); //复制当前标签
      $(t).parents('.'+bar).prev().before(obj);    //在上一个标签之前添加当前标签
      $(t).parents('.'+bar).remove();              //删除当前标签
    }else{ 
      alert('亲,现在已是最上的哦,不能再上移了...'); 
    } 
  },
 
  //设置下移 
  setDown: function(t){ 
    var bar = 'showAndHide_box'; 
    if($(t).parents('.'+bar).next('.'+bar).html() != undefined){ 
      var obj = $(t).parents('.'+bar).clone(true); //复制当前标签
      $(t).parents('.'+bar).next().after(obj);     //在下一个标签之后添加当前标签
      $(t).parents('.'+bar).remove();              //删除当前标签
    }else{ 
      alert('亲,现在已是最下的哦,不能再下移了...'); 
    } 
  } 
}

相关评论(0)
您是不是忘了说点什么?

友情提示:垃圾评论一律封号...

还没有评论,快来抢沙发吧!