2012-07-02 17 views
8

मैं जरूरत नीचे कार्यक्षमताओंjQuery ui बहु चयन खींचें

  1. माउस खींचने और jQuery ui selectables को cntrl कुंजी समान द्वारा सूची से आइटम का चयन करें।
  2. कई वस्तुओं को एक समय में खींचने योग्य होना चाहिए।

मुझे ऑपरेटिंग सिस्टम ड्रैग और ड्रॉप कार्यक्षमता के समान एप्लिकेशन की आवश्यकता है।

मेरी समस्या यह है कि यदि मैं माउस पॉइंटर आइटम खींच रहा है, तो इसे हल करने के लिए कई आइटम चुनना चाहूंगा।

मुझे कोड का उपयोग करने की कोशिश की गई थी लेकिन इसमें कई आइटम चुनने पर कुछ दोष हैं।

$(document).ready(function(){ 

    var selectedClass = 'ui-state-highlight', 
     clickDelay = 600,  // click time (milliseconds) 
     lastClick, diffClick; // timestamps 

    $("#draggable li") 
     // Script to deferentiate a click from a mousedown for drag event 
     .bind('mousedown mouseup', function(e){ 
      if (e.type=="mousedown") { 
       lastClick = e.timeStamp; // get mousedown time 
      } else { 
       diffClick = e.timeStamp - lastClick; 
       if (diffClick < clickDelay) { 
        // add selected class to group draggable objects 
        $(this).toggleClass(selectedClass); 
       } 
      } 
     }) 
     .draggable({ 
      revertDuration: 10, // grouped items animate separately, so leave this number low 
      containment: '.demo', 
      start: function(e, ui) { 
       ui.helper.addClass(selectedClass); 
      }, 
      stop: function(e, ui) { 
       // reset group positions 
       $('.' + selectedClass).css({ top:0, left:0 }); 
      }, 
      drag: function(e, ui) { 
       // set selected group position to main dragged object 
       // this works because the position is relative to the starting position 
       $('.' + selectedClass).css({ 
        top : ui.position.top, 
        left: ui.position.left 
       }); 
      } 
     }); 

    $("#droppable, #draggable") 
     .sortable() 
     .droppable({ 
      drop: function(e, ui) { 
       $('.' + selectedClass) 
       .appendTo($(this)) 
       .add(ui.draggable) // ui.draggable is appended by the script, so add it after 
       .removeClass(selectedClass) 
       .css({ top:0, left:0 }); 
      } 
     }); 

}); 
+0

कृपया मुझे मदद करें –

उत्तर

2

यहाँ एकाधिक चयन करें खींचें का एक डेमो

Demo

बस चयन प्लगइन का उपयोग है एकाधिक वस्तुओं का चयन करने के लिए

$(".itemlist").selectable({filter:"li"}); 
+3

प्रश्न में जुड़े हुए थे इस उदाहरण में ड्रैग फ़ंक्शन 'ड्रैग और ड्रॉप' संदर्भ में काम नहीं करता है। ** ड्रैग ** आइटम को चुनने, आइटम को स्थानांतरित करने में सुविधा प्रदान करना चाहिए। – Astrotim

+0

हाँ, यह जवाब नहीं है ... – cmcculloh

+1

यह एक उत्तर से संपर्क करना शुरू कर रहा है: http://jsfiddle.net/cmcculloh/8M6qt/ – cmcculloh

0

चयन ग्रिड उदाहरण कोड का उपयोग करें और के रूप में इस उदाहरण में दिखाया गया खींचने योग्य + क्रमित करने योग्य कार्यक्षमता जोड़ने: http://jqueryui.com/demos/draggable/#sortable

+0

आपके ध्यान के लिए धन्यवाद, लेकिन मुझे मल्टीसेलेक्ट ड्रैग और ड्रॉप –

+0

अपने कोड और डेमो फिडल के साथ अपना प्रश्न अपडेट करें, ताकि हम आपकी समस्या के साथ आपकी मदद कर सकें। – Alp

+0

प्रश्न –