2010-11-01 25 views
6

'da sürüklenebilir kullanarak yardımcısını nasıl özelleştirebilirim Bir yardımcı işlev kullanarak "sürüklenmekte olan öğe" metninden alınan özel bir öğe oluşturmak istiyorum. Benim sorunum, ui'nin tanımlanmamış olması, bu yüzden sürüklemenin kaynağını nasıl tutacağımı bilmiyorum.JQuery-UI

$('.draggable').draggable({ 
    helper: function(event, ui) { 
     var foo = $('<span style="white-space:nowrap;">DRAG TEST</span>'); 
     return foo; 
    } 
}); 

cevap

16

Eğer is invoked the following way uyguluyorsanız helper fonksiyonu: this örneğin, o işlev içinde istediğiniz .draggable atıfta demektir

$(o.helper.apply(this.element[0], [event])) 

:

$('.draggable').draggable({ 
    helper: function(event) { 
    return $('<span style="white-space:nowrap;"/>') 
      .text($(this).text() + " helper"); 
    } 
}); 

You can test it out here.

+0

Teşekkürler! Bir çekicilik gibi çalıştı. Belki de olayları ve ui işlev çağrılarını kaldırır mısın yoksa bir şekilde mi kullanılıyorlar? – Cros

+1

@Cros - 'event' orda, ama evet 'ui' yabancı, her zaman 'undefined', cevabı kaldıracağım. –

+0

@NickCraver Merhaba Nick, cevabınız harika çalışıyor. Orijinal öğeyi döndürmeye çalışıyorum (ancak küçültülmüş). $ (this) .clone() işlevi iyi çalışıyor, ancak sadece $ (this) döndüren öğeyi taşımazsa, nedenini biliyor olabilirsiniz diye merak ettim. – JonWells

İlgili konular