Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: jQuery UI: widgetin bindaaminen

Triton [24.10.2013 15:08:27]

#

Moi,

mitenhän saan jQueryssa bindattua jQuery UI:n draggable-widgetin dynaamisesti luotuun elementtiin. Eventtia osalta se helppoa, mutta näitä widgettejä en saa millään toimimaan.

groovyb [24.10.2013 18:14:32]

#

$("#elementID").draggable(); tai esim. $(".draggable").draggable(); ja annat tuon luokan dynaamisesti luoduille elementeille jotka haluat bindata.

Metabolix [24.10.2013 18:42:32]

#

groovyb:n vastauksesta ei varmaan ole tässä iloa, koska tuohan ei koske kuin niitä elementtejä, jotka ovat kutsuhetkellä olemassa. Kysymys ehkä oli, onko draggable-widgetille olemassa jokin maaginen kutsu, joka löytäisi myös tulevaisuudessa ilmestyvät elementit.

Tietääkseni maagista ratkaisua näille ei ole. Etkö voi vain kutsua draggable-funktiota silloin, kun luot uusia elementtejä? Myös tapahtumankäsittelijät voi asettaa ihan samaan aikaan; delegoidut käsittelijät aiheuttavat turhaa laskentaa, ja dokumentaatiossa varoitetaankin niistä: ”Attaching many delegated event handlers near the top of the document tree can degrade performance.”

qeijo [24.10.2013 19:13:48]

#

Kokeile auttaisiko kuitenkin seuraavanlainen toteutus:

$(document).on("drag", ".dynaaminen-elementti", function() {

     //Magic
});

Triton [25.10.2013 20:17:11]

#

Päädyin itsekin tuohon Metabolixin ehdottamaan ratkaisumalliin ja se toimii kyllä hyvin.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta