html - 初学jQuery,测试append 和appendTo的时候,发现结果和预期不大一样,求解 0.0
本文介绍了html - 初学jQuery,测试append 和appendTo的时候,发现结果和预期不大一样,求解 0.0的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
首先是调用append方法,在第四五个li后面添加span标签,之后调用了appendTo,在所以li后面添加span标签,但是为什么第五个li后面最后只有一个span呢。。
附上代码:
<body>
<ul>
<li>num:1</li>
<li>num:2</li>
<li>num:3</li>
<li>num:4</li>
<li>num:5</li>
</ul>
<script>
var $li = $("<span class='glyphicon glyphicon-modal-window'></span>")
$("li:gt(2)").append($li);
$li.appendTo($("li"));
</script>
</body>
结果:
解决方案
容我一段一段的解释
//生成了jq对象.名为$li
var $li = $("<span class='glyphicon glyphicon-modal-window'></span>");
//num4和num5的标签分别插入了$li
这个jq对象. 这里可以看出最终的$li
指向了num5里面的这个span$("li:gt(2)").append($li);
//所有的li标签都插入$li
的对象(这个对象看上文.开始是指向num5的span). append
和appendTo
在处理jq标签都是移动.而不是复制. 因为刚说了重点.$li
这个对象在num5这个li
标签内.所以是不做操作移动.其他的li
标签都不存在这个$li
.所以都移动了过去.这就是为什么最后一个li
标签只有一个span的原因$li.appendTo($("li"));
可能有点乱.但是是这个理.题主有什么不懂得可以随时跟我沟通
这篇关于html - 初学jQuery,测试append 和appendTo的时候,发现结果和预期不大一样,求解 0.0的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文