2
My list is something like this
<div id="jqxTree">
    <ul>
        <li>Parent1
            <ul>
                child1
            </ul>
        </li>
        <li>Parent2
            <ul>
                child2
            </ul>
            <ul>
                child2.1
            </ul>
        </li>
    </ul>
</div>

当我使用 jquery 可拖动它拖动整个列表时。如何我只拖动 child1,child2,child2.1 元素。概括地说,我只想在 li 内部的 ul 中拖动 li 元素。

我尝试使用下面的函数但是在鼠标悬停时 li 的元素被隐藏了

$('#jqxTree').delegate('li li', 'mouseover', function () {
    $(this).draggable({
        revert: true,
        revertDuration: 0
    });
}); 
4

1 回答 1

4

根据 jQuery API 页面:

从 jQuery 1.7 开始,.delegate() 已被 .on() 方法取代。

小提琴演示

jQuery:

$(function () {
    $('#jqxTree').on('mouseenter mouseover', 'li > ul', function () {
        $(this).draggable({
            revert: true,
            revertDuration: 0
        });

    });
});

在 CSS 中,>在父元素和子元素之间使用。

你也有li li而不是li ul.

于 2013-12-30T06:43:12.913 回答