首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能动态拖动附加的DIV

问不能动态拖动附加的DIV
EN

Stack Overflow用户
提问于 2013-08-31 07:14:03
回答 3查看 1.4K关注 0票数 0

http://liveweave.com/rh0ILM

http://jsbin.com/IZodOSU/1/edit

所有具有拖放类的div都应该是可拖动的,但是当一个div被追加时,它是不可拖的。有人能帮我解决这个问题吗?

代码语言:javascript
复制
<script src="http://threedubmedia.com/inc/js/jquery-1.7.2.js"></script>
<script src="http://threedubmedia.com/inc/js/jquery.event.drag-2.2.js"></script>
<script src="http://threedubmedia.com/inc/js/jquery.event.drag.live-2.2.js"></script>

<button id="divgen">Gen Div</button>

<div class="container">
    <div class="drag" style="left:20px;"></div>
    <div class="drag" style="left:100px;"></div>
    <div class="drag" style="left:180px;"></div>
</div>

CSS

代码语言:javascript
复制
.drag {
    position: absolute;
    border: 1px solid #89B;
    background: #BCE;
    height: 58px;
    width: 58px;
    cursor: move;
    top: 120px;
}

JS/JQuery

代码语言:javascript
复制
jQuery(function($){
    $('.drag').drag(function( ev, dd ){
        $( this ).css({
            top: dd.offsetY,
            left: dd.offsetX
        });
    });

    $("#divgen").click(function() {
        $("div.container").append('<div id="whatever" class="drag">my div</div>');
    });
});
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-08-31 07:17:56

试试下面的。您必须使用委托,因为DIV是动态创建的。

代码语言:javascript
复制
$('.container').on('drag','.drag',(function( ev, dd ){
    $( this ).css({
        top: dd.offsetY,
        left: dd.offsetX
    });
}));

Working Demo

票数 3
EN

Stack Overflow用户

发布于 2013-08-31 07:16:24

由于这个div是新添加到DOM中的,所以在$(“#divgen”).click(.)中您需要重新运行拖动函数。

票数 0
EN

Stack Overflow用户

发布于 2013-08-31 07:19:18

在追加新的div后再次调用拖放函数。

代码语言:javascript
复制
jQuery(function($){
    $('.drag').drag(function( ev, dd ){
        $( this ).css({
            top: dd.offsetY,
            left: dd.offsetX
        });
    });

    $("#divgen").click(function() {
        $("div.container").append('<div id="whatever" class="drag">my div</div>');
        $('.drag').drag(); // Call drag function.
    });
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18545604

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档