0

我已经能够让它工作,但只有部分时间 - 因为在一些拖动会注册,但其他人会滑回原来的位置并且无法工作。这是尽可能精简的,因为我可以让它不起作用:

<div>
    <div id="drop" style="border: solid 1px green; ">
        bla<br />bla<br />bla<br />bla<br />bla<br />
    </div>
    <ul>
        <li id="t5" style="border:solid 1px red;">T5</li>
    </ul>
</div>

<script type="text/javascript">
    $(function () {
        $('#t5').kendoDraggable({
            hint: function (e) {
                return e.clone();
            }
        });

        $('div#drop').kendoDropTarget({
            drop: function (e) { console.log(e); }
        });
    });
</script>

这样,drop 将不会注册(没有记录任何内容),但如果我只是将 'div#drop' 更改为 'body' (这样它会捕获所有内容),drop 就会记录下来。我不明白什么?除了 jquery 1.8.2 参考和剑道之外,我在这个测试页面上没有其他任何东西。谢谢你。

4

1 回答 1

0

我在演示中尝试了您的代码,但它按预期工作。您正在测试哪些浏览器?

我有一个理论认为这可能会发生,因为您的可拖动对象是一个li只能插入到ul. 您可以尝试以下修改:

    $('#t5').kendoDraggable({
        hint: function (e) {
            var ul = $("<ul/>");
            ul.append(e.clone());
            return ul;
        }
    });
于 2013-02-06T17:36:05.377 回答