我有一个关于 JavaScript 函数的动态调用的问题。这是我的问题:
假设我有一个包含颜色选择器的元素(div)。我想动态地使用/克隆这个元素(用户想要多少次)。调用这个颜色选择器看起来像:代码可以在这里查看:http: //jsfiddle.net/CJhqc/1/(把它放在小提琴中,因为它在这里搞砸了,而不是在那里测试)
其中 id 是例如名为 的变量my_color
。我添加[]
到输入中,以便我可以调用更多这个颜色选择器项目。没关系,我可以有 5 个这样的元素,并且可以读取每个输入。问题来自颜色选择器调用。colopicker 现在有id="color_picker"
然后调用:
jQuery(document).ready(function(){
jQuery('#color_picker').children('div').css('backgroundColor', '<?php echo $value; ?>');
jQuery('#color_picker').ColorPicker({
color: '<?php echo $value; ?>',
onShow: function (colpkr) {
jQuery(colpkr).fadeIn(500);
return false;
},
onHide: function (colpkr) {
jQuery(colpkr).fadeOut(500);
return false;
},
onChange: function (hsb, hex, rgb) {
jQuery('#color_picker').children('div').css('backgroundColor', '#'+ hex);
jQuery('#color_picker').next('input').attr('value','#'+ hex);
}
});
});
问题:如果我现在有 3 个这样的项目,它们的 JavaScript 总是相同的。颜色选择器旁边的输入是 "arrayed" -> <?php echo $id; ?>[]
,但是如何为每个项目设置颜色选择器 JavaScript。而且不能给color_picker id -> color_picker[]
。现在,如果我想更改第二个项目的颜色(例如),第一个项目的颜色将发生变化,而不是第二个项目。猜猜每个人都需要它自己的 JavaScript,但是如何调用它呢?
提前致谢!!!