3 回答
TA贡献1820条经验 获得超2个赞
没太理解你说的自带删除的意思!从你的这个例子来看,这两段代码确实等效。 原理:代码1中,首先返回了一个选中的option对象,然后将该对象remove()操作,这时它返回了一个jQuery对象并存入$remove对象中,最后将$remove对象内嵌进#select2中。这里的$remove==$options代码2中,直接将选中的option对象,追加到了#select2中。大概你所谓的自带删除,是指#select1中的option项没有了的意思吧。这其实属于元素的移动。值得注意的一点是:使用remove()方法,返回的jQuery对象,与原始对象的区别在于,它们只保留了元素本身,其他的比如绑定的事件,附加的数据等都会被移除。
TA贡献1821条经验 获得超4个赞
append或者appendTo的意思是移动DOM,而不是复制DOM
原理:代码1中,首先返回了一个选中的option对象,然后将该对象remove()操作,这时它返回了一个jQuery对象并存入$remove对象中,最后将$remove对象内嵌进#select2中。这里的$remove==$options代码2中,直接将选中的option对象,追加到了#select2中。大概你所谓的自带删除,是指#select1中的option项没有了的意思吧。这其实属于元素的移动。值得注意的一点是:使用remove()方法,返回的jQuery对象,与原始对象的区别在于,它们只保留了元素本身,其他的比如绑定的事件,附加的数据等都会被移除。
先移除DOM,再把移除的DOM移动到某处,
和代码2,直接移动DOM到某处,是一回事
TA贡献1818条经验 获得超7个赞
append或者appendTo的意思是移动DOM,而不是复制DOM
所以说
代码1,先移除DOM,再把移除的DOM移动到某处,和代码2,直接移动DOM到某处,是一回事
添加回答
举报