【问题标题】:draggable elements with prototype带有原型的可拖动元素
【发布时间】:2012-03-20 22:12:10
【问题描述】:

我正在尝试使用原型制作新的可拖动元素。第一个元素被添加并且是可拖动的,但是如果我单击添加另一个元素,则第二个元素是不可拖动的。以下是我目前所拥有的:

var i = 1;
function addDragElement() {
        var str = i + '.png';
        var attrs = {
            src   :  str,
            class : 'product-tag-image',
            id    : 'product-tag-image' + i,
        };
        var img = new Element('img', attrs);
        $('look-image').insert(img);

        new Draggable(img, 
            { onEnd : function(){
                alert(img.offsetTop + ", " + img.offsetLeft);
            }
        });
        i++;
}

知道为什么第一个会起作用,但添加的任何其他元素都不起作用吗?

【问题讨论】:

    标签: javascript prototypejs element draggable scriptaculous


    【解决方案1】:

    我得到了这个工作。我用$(document.body').insert(img)替换了$('look-image').insert(img);

    我手边没有图片,所以我添加了一些 CSS 以使您插入的图片可见:

    .product-tag-image {
        width:50px;
        height:50px;
        display:block;
        border:1px solid #ff0000    
    }
    

    看起来不错。你有任何 JS 错误吗? (我一开始是因为忘记包含 Scriptaculous)。

    【讨论】:

    • 我有一个 id 为 look-image 的元素,即插入可拖动项目的位置。没有错误,插入的第一个工作正常,拖动完成后我得到顶部和左侧的值就好了。但是我需要添加多个项目并使它们也可以拖动,这就是它中断的地方,添加的第二个不能使用它拖动。
    猜你喜欢
    • 2019-06-27
    • 1970-01-01
    • 1970-01-01
    • 2016-07-22
    • 1970-01-01
    • 2012-09-17
    • 2020-06-28
    • 2023-04-07
    • 1970-01-01
    相关资源
    最近更新 更多