我似乎无法将元素拖动到初始状态为隐藏(即display:none)的可排序列表中。jQuery将元素拖到可排序列表中,初始状态为隐藏
每一行的HTML看起来像这样:
<div class="dragbox" id="item1" >
<h2>Expression 1<span id="exp1"></span></h2>
<div class="dragbox-content" >
<ul class="dragrow1"></ul>
<ul class="dragrow2"></ul>
</div>
</div>
但为了使场能投进一个“dragrow *”,在div“dragbox内容”必须具有的风格“显示:块”。这可以写在主要的CSS风格,或硬编码到本身(例如)
问题是,页面加载时,你有点想要关闭所有行(或至少除了一个)。这意味着'display'最初应该设置为'none'。这部分很简单。一些jQuery的可以改变在页面加载这个CSS就绪()事件中:
$('.dragbox')
.each(function(){
$(this).find('.dragbox-content').hide();
});
而且有一个叫做“切换”当你点击H2标签自动交换块&没有之间的这个CSS显示其中一个jQuery命令。所以我可以显示或隐藏每一行。
因此,如果在ready()事件中显示一行(显示:块),可以将项目拖到可排序列表中(即使您在显示和隐藏行之间切换)。
但是...如果在ready()事件中一行被隐藏(显示:无),则不可能将项目拖到可排序列表中。
任何想法?真的卡在这一个...
谢谢,但我已经成功地使用它。主要的问题是弄清楚为什么当您在ready()事件中设置display:none时,该项目无法被拖入可排序列表中。但是,如果您将它们保留为显示:页面加载时阻止,您可以...我要做的是查看更基本的示例,并查看它是否也发生了这种情况。不知道是否有某种缓存问题...? – WastedSpace 2010-01-26 17:13:42