所以現在我可以動態地創建元素(2行12塊),當我單擊一個塊時,我也可以改變它的顏色。Colorpicker按預期工作
但是,我有一個問題。當我點擊一個塊來改變顏色時,顏色選擇器會彈出,沒有任何問題。當我添加一組新的行並嘗試着色相同的塊編號時,它將替換上一行中塊的顏色。例如,如果我在第一行中着色第12個塊,然後添加2個新的行集並單擊第二個集合中的同一個塊,它就會像我點擊上一個集的塊一樣。我使用https://bgrins.github.io/spectrum/我的取色
這裏是我迄今所做的鏈接:
http://codepen.io/anon/pen/bwBRmw
var id_num = 1;
var picker = null;
$(function() {
$(document).on('click', ".repeat", function (e) {
e.preventDefault();
var $self = $(this);
var $parent = $self.parent();
if($self.hasClass("add-bottom")){
$parent.after($parent.clone(true).attr("id", "repeatable" + id_num));
id_num = id_num + 1;
//picker = null;
} else {
$parent.before($parent.clone(true).attr("id", "repeatable" + id_num));
id_num = id_num + 1;
//picker = null;
}
});
});
$(".container").on("click", "a", function(e) {
var self = this;
console.log(this.id)
console.log(this)
$(self).spectrum({
color: "#f00",
change: function(color) {
$(self).css('background-color',color.toHexString());
}
});
e.stopPropagation();
})
但它不是已經在函數中嗎?在我用頻譜代碼運行函數之前點擊元素之前監聽器正在等待在裏面 – blazerix