js如何实现只要点击对应按钮 对应的li就自动排列到第一位相当于置顶
<ulid="tb1"><li><span>1</span><span><aonclick="SetTop(this);">置顶</a></span></li><li><...
<ul id="tb1">
<li><span>1</span><span><a onclick="SetTop(this);">置顶</a></span></li>
<li><span>2</span><span><a onclick="SetTop(this);">置顶</a></span></li>
<li><span>3</span><span><a onclick="SetTop(this);">置顶</a></span></li>
</ul>
<script>
function SetTop(v){
var tr = $(v).parent("span").parent("li");
$("#tb1").find("li").first().before(tr);
}
</script>
我想把置顶提出来 不知道怎么改 展开
<li><span>1</span><span><a onclick="SetTop(this);">置顶</a></span></li>
<li><span>2</span><span><a onclick="SetTop(this);">置顶</a></span></li>
<li><span>3</span><span><a onclick="SetTop(this);">置顶</a></span></li>
</ul>
<script>
function SetTop(v){
var tr = $(v).parent("span").parent("li");
$("#tb1").find("li").first().before(tr);
}
</script>
我想把置顶提出来 不知道怎么改 展开
展开全部
<html>
<body>
<ul>
<li onclick="topLine(event)">111</li>
<li onclick="topLine(event)">222</li>
<li onclick="topLine(event)">333</li>
</ul>
</body>
</html>
<script type="text/javascript">
//思路:获取当前行,复制,删除,插入到第一行。
var topLine = function(event){
event = event || window.event;
var t = event.currentTarget,$t = $(t);
var html = t.outHTML;
$t.remove();
$t.parent().find('li:first-child').before(html);
};
</script>
更多追问追答
追问
这个思路不行只能点击删除 没有复制。 其实我在网上也找了一些相关效果但是他们都是把点击效果放在li里面了,我不想放在里面 想提出来,我js很菜。
追答
放在哪里都行,只要能确定到某一个LI标签就可以。
上面的代码没有经过测试,直接手写的。可以简单调试下。
如果有问题的话也是最后一句。
可以换成
$(html).before($t.parent().find('li:first-child'));
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询