1

当使用 jQuery UI draggable+sortable 时,draggable 元素在放入 sortable 时会丢失它的 css。这是我的代码,这是一个js fiddle 演示

尝试将可拖动的 div 放入 sortable 并查看它是否丢失了(在这种情况下)背景颜色和边框。有可能防止这种情况吗?

<script>
    $("#content").sortable({
        revert:true
    });
    $( "#draggable" ).draggable({
      connectToSortable: "#content",
      revert: "invalid",
      stop: function(event,ui) {
        $(ui.item).attr('id','draggable');
      }
    });
</script>
<style>
 #content {width:150px;}
 #draggable {   
    width:50px;
    height:50px;
    border:1px solid red;
    background-color:blue;} 
 .text {
    min-height:100px;
    width:100%;
    border:1px solid red;

    background-color:red;
 }
</style>
<div id="content">
    <div class="text">Item</div>
    <div class="text">Item</div>
    <div class="text">Item</div>
    <div class="text">Item</div>
    <div class="text">Item</div>
    <div class="text">Item</div>
</div>
4

2 回答 2

0

拖拽会丢失ID。您可以通过将 css 附加到类来解决此问题。
在您的 html 中:

<div id="draggable" class="dragclass">Drag</div>

在CSS中:

 .dragclass {   
    width:50px;
    height:50px;
    border:1px solid red;
    background-color:blue;}

查看更新的小提琴:http: //jsfiddle.net/y6KHn/2/

于 2013-02-18T07:02:26.107 回答
0

或者,如果您需要 ID 做其他事情,您可以将此代码添加到您的可排序调用中:

  beforeStop: function (event, ui) { 
      newItem = ui.item;
  },
  receive: function(event,ui) {
      $(newItem).attr("id","draggable");     
  }

更新小提琴:http: //jsfiddle.net/y6KHn/5/

请参阅jquery:如何更新可拖动克隆 id?

于 2013-02-18T07:27:39.650 回答