为了账号安全,请及时绑定邮箱和手机立即绑定

append添加位置问题

append添加位置问题 为什么点击add传递html结构多次以后 新的P元素总是出现在3个list item之上?

正在回答

4 回答

你第一次点击的时候取出.div里的三个li并加上新的p添加到div.right里,此时.right里有三个li一个p

第二次点的时候你把三个li取出,此时.right里只剩一个p(暂且取名‘次新p’),你再用三个li加一个新p添加到.right中时是添加到次新p的下面,就造成了你所看到的现像,其实最下面的p和三个li才是新添加的,上面的是以前的

6 回复 有任何疑惑可以回复我~
#1

CATHY大魔王 提问者

非常感谢!说的好详细
2016-08-04 回复 有任何疑惑可以回复我~
#2

C0EEC3F7BBAA 回复 CATHY大魔王 提问者

互相帮助·共同进步
2016-08-04 回复 有任何疑惑可以回复我~
#3

Candy3610866

麻烦看一下,图中两个蓝色圈里的内容是我改过的,其他都没变. 然后按照你的说法,最后的结果不是应该像最右侧的蓝色框里那样的吗?怎么就不是呢。。。。。
2016-08-18 回复 有任何疑惑可以回复我~
#4

初晴ljp 回复 C0EEC3F7BBAA

想问一下为什么第一次点击是加到.right里面
2016-09-20 回复 有任何疑惑可以回复我~
查看1条回复

你根据代码顺序来理解$('p').add('<p>新的P元素</p>').appendTo('.right');

---------------------------------------------------------------------------------------

其实是这样的。他先用$('p')取到原始p标签对,然后把(<p>新的P元素</p>)这段代码添加到p标签集合中,也就是$('p').add('<p>新的P元素</p>')

然后把这个新的集合(原来的p+新p)再添加到指定的.right里面,也就是.appendTo('.right');


0 回复 有任何疑惑可以回复我~

其实你可以 先 append 两下 然后再点击改变颜色事件  然后再继续append  你就会发现下面是上面是红色的而下面试没有颜色的 说明是从下面添加的,它只是重复执行了取出 li 然后又放到自己的下面

0 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//57b594730001149010670754.jpg

为什么结果不是右侧蓝色框里显示的那样?

0 回复 有任何疑惑可以回复我~
#1

慕仰6432972

因为你在第一次点击以后,之后再点击取的P不就是两个了吗?一个P是原始P一个P是新的P,然后你再点就变成了取一个原始P一个新的P再加上一个新的P,如此往复。如果你把原始P加个class试试,然后选择class而不是P
2016-09-08 回复 有任何疑惑可以回复我~
#2

Airly

你根据代码顺序来理解$('p').add('<p>新的P元素</p>').appendTo('.right'); --------------------------------------------------------------------------------------- 其实是这样的。他先用$('p')取到原始p标签对,然后把(<p>新的P元素</p>)这段代码添加到p标签集合中,也就是$('p').add('<p>新的P元素</p>') 然后把这个新的集合(原来的p+新p)再添加到指定的.right里面,也就是.appendTo('.right');
2016-10-13 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

append添加位置问题

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号