慕粉3210663
2016-08-26 12:45
这个不是太理解
的确是缓存问题,清了缓存就行
1.直接点击右边按钮,出现下面添加成功的,是因为内存中还有刚才detach()的p对象,这儿的重置代码没删除内存,所以会造成有这种情况,可以刷新右边页面,不用重置代码。
正常的直接点击右边按钮,其实是执行$("body").append(undefined);,页面中没有添加任何元素
2.#bt1为什么去重,当有p节点的时候才执行删除且保存到变量p中,没有p节点的时候,不执行删除且保存。
如果不去重,即没有p节点的时候,执行删除且保存到变量p中,那右边按钮就是无效的了
3.#bt2为什么不去重,append在是调用原生的appendChild。如果调用appendChild()将已存在文档中的一个节点再次插入,那个节点将自动从它当前的位置删除并在新的位置重新插入:没有必要显式删除该节点。
应该是点击了移除,又重置了代码,这个时候内存里应该还保留了上次移除的两个p元素,再次操作会累加成4个p元素
因为detach()中只是页面不可见,但是这个节点还是保存在内存中,如果先点击移动P元素,就会将原来detach中的节点内容显示在页面上,因此你可以看到四句话,当你再点击删除的时候,删除的是四句话,所以这个节点内容就变为四句话了,当再点击移动元素就出现四句话。
是你哪里敲错了吧,并没有4个p元素
jQuery基础(二)—DOM篇
114014 学习 · 590 问题
相似问题
回答 1
回答 2