【发布时间】:2013-10-10 16:10:34
【问题描述】:
我正在使用 JqueryUI 对树中一组嵌套的 ol 和 li 元素进行排序。我还在每个叶节点放置了空的ol 元素,以便可以将子节点添加到叶节点。
目前空占位符一直显示并且工作正常。但是我想隐藏它们,直到我开始对 ul 和 li 元素进行排序。
通过使用 Jquery,我可以更改空元素的 css 类以根据需要显示和隐藏它们(添加或删除边框和高度)。我已将这些连接到.sortable 中的start 和stop 事件,这种显示/隐藏也有效。
但是,占位符不再用作接受其他可排序元素的区域。
如何解决此问题,以便占位符在更改类后仍可用作有效的可放置区域。
注意,我确实保留了占位符元素的 ui-sortable 类。
谢谢。
代码:
$(".sitemapList").sortable(
{
placeholder: "ui-state-highlight1",
distance: 5,
connectWith: ".sitemapList",
start: function (event, ui)
{
var change = $(".dontShow");
var length = change.length;
for (var i = 0; i < length; i++)
{
$(change[i]).attr("class", "sitemapList show ui-sortable");
}
},
stop: function (event, ui)
{
var change = $(".show");
var length = change.length;
for (var i = 0; i < length; i++)
{
$(change[i]).attr("class", "sitemapList dontShow ui-sortable");
}
}
});
CSS:
.siteMap ol.show
{
min-height:28px;
width:15%;
/*background-color:#f7eac9;*/
border:dotted 1px;
}
.siteMap ol.dontShow
{
}
【问题讨论】:
-
如果你能发布一些代码会更容易
标签: javascript jquery html css jquery-ui-sortable