2013-03-15 26 views
0

我試圖綁定一個名爲miniColors(http://bit.ly/Mq88mU)的jQuery插件到我有的點擊功能中,以將幻燈片添加到幻燈片管理器。我似乎無法弄清楚如何正確地綁定它。有任何想法嗎?綁定顏色選擇器插件點擊功能

這是我的外接滑動功能

el.on('click', '.addSlide', function (e) { 
    e.preventDefault(); 
    var templ = $('#slideTemplate').html(); 
    var id = parseInt($('ul.ui-sortable li').last().find('.order').val()) || 0; 
    var slide = templ.replace(/%id%/g, id).replace(/%id1%/g, id + 1); 
    $(templ).find('.minicolors').minicolors(); 
    $(slide).hide().insertAfter($('ul.ui-sortable li').last()).fadeIn(300); 
}); 

回答

0

不知道這是實現它的正確方法,但通過使用淡入功能我已經能夠做到什麼我打算。

$(slide).hide().insertAfter($('ul.ui-sortable li').last()).fadeIn(function(){ 
    $(this).find('.minicolors').minicolors(); 
}); 
0

你們是不是這樣,它出現在點擊綁定呢?我想像你只需要像做...

$('.minicolors').minicolors(); 

您可以通過使用jQuery選擇爲它選擇類「minicolors」的申報單。

我不確定你在用find()爲什麼,但我敢肯定你不想在slideTemplate div中使用任何HTML作爲它的選擇器。

+0

我曾嘗試過,它已經在那裏添加了一個現有的幻燈片。所以每次添加新幻燈片時,都會將該插件添加到所有幻燈片中。 – souporserious 2013-03-15 19:51:44

1

它看起來像你試圖初始化插件,而它不存在於DOM上。

var templ = $('#slideTemplate').html(); 
var id = parseInt($('ul.ui-sortable li').last().find('.order').val()) || 0; 
var slide = templ.replace(/%id%/g, id).replace(/%id1%/g, id + 1); 

$('PARENT').append($(templ)); 
$(templ).find('.minicolors').minicolors(); 

或者,如果你想直接關閉DOM工作:

var templ = $('#slideTemplate'); 
var id = parseInt($('ul.ui-sortable li').last().find('.order').val()) || 0; 
var slide = templ.html().replace(/%id%/g, id).replace(/%id1%/g, id + 1); 
templ.find('.minicolors').minicolors(); 
+0

對不起,這沒有奏效。 – souporserious 2013-03-15 22:02:43