javascript - jquery append 移动元素后,如何还原此元素原来的位置
天蓬老师
天蓬老师 2017-04-11 09:18:12
[JavaScript讨论组]

jquery的append方法可以移动元素,例如append($('#a'))。
但是,移动元素后,想把$('#a')这个元素还原到原来的位置,该如何操作

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(3)
PHP中文网

我想到的方法是在移动的元素上加个标记,标记他从哪来的。

html

<p id="box1" style="width: 100px; height: 50px; background-color: yellow;" >
  <a class="a" href="javascript:">点击</a>
</p>
<p id="box2" style="width: 100px;height: 50px;background-color: green;" >
  <a class="a" href="javascript:">点击</a>
</p>
<p id="box3" style="width: 100px;height: 50px;background-color: red;">
</p>

js

$(function(){
    $('#box1,#box2').click(function(){
        $(this).find('.a').data('from', $(this));
        $('#box3').append($(this).find('.a'));
      });
      $('.a').click(function(){
        if($(this).data('from')){
            $(this).data('from').append(this);
        }
      });
});
怪我咯

append是向每个匹配的元素内部追加内容。append()中的参数是添加的html内容,没看懂你所谓的移动元素为何物?

大家讲道理

1:append() after() prepend() ==方法, 将移动后的#a 移动回去, 需要合理运用方法和选择器
2:另外的实现, clone #a, 原来的#a 隐藏, 移动的话, 显示出原来的#a,新的#a 隐藏或者删除

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号