Javascript 尝试设置将随jquery更改函数更改的作用域变量

Javascript 尝试设置将随jquery更改函数更改的作用域变量,javascript,jquery,angularjs,color-picker,Javascript,Jquery,Angularjs,Color Picker,我不确定我是否做得对。我试图通过使用颜色选择器选择颜色来设置div的背景。我有这个来证明我在努力做什么。然而,TargetColor似乎没有约束力。我走错方向了吗?有人对如何通过示例实现这一点有什么建议吗?最后的想法是在颜色更改页面上更改所有容器的颜色(容器的数量可能非常多,可以制作新的容器,这就是为什么要使用样式标记) 这里有一个处理这个问题的指令: 正如评论中提到的,您不应该在指令之外进行DOM操作,如果您不遵守指导原则,您将不会从angular中获得很多好处:为什么使用-1?这个问题似乎是

我不确定我是否做得对。我试图通过使用颜色选择器选择颜色来设置div的背景。我有这个来证明我在努力做什么。然而,TargetColor似乎没有约束力。我走错方向了吗?有人对如何通过示例实现这一点有什么建议吗?最后的想法是在颜色更改页面上更改所有容器的颜色(容器的数量可能非常多,可以制作新的容器,这就是为什么要使用样式标记)

这里有一个处理这个问题的指令:


正如评论中提到的,您不应该在指令之外进行DOM操作,如果您不遵守指导原则,您将不会从angular中获得很多好处:

为什么使用-1?这个问题似乎是合理的,我认为是那个人最初发表了评论。我没有-1他的,但他一定认为我这样做了,并对我的做了。我建议对小提琴做一些修改,然后重新提交这个问题:1)调用$scope.initializeColor到某个地方2)将所有DOM manip从控制器移到指令中,3)不要使用ng样式,相反,让指令操纵css以更改css类的颜色,并将该css类分配给每个颜色会更改的容器。@RoyTruelove我真的不知道如何做第2项。我已经看过很多关于指令应该如何工作的文章,但我仍然不知道如何制定自己的指令。我可以用一些基本的东西来做,但当涉及到我正在尝试做的事情时,我甚至无法接近,也找不到一个好的例子来说明如何做。我在reddit上发布了这个问题,有人也发布了。您是否有一种使用指令的方式比另一种方式“更正确”?或者仅仅是两种不同的方式。也非常感谢你。我似乎很难理解angular的指令是如何工作的。这只是两种不同的方式,但对于我的,你不必担心stectrum会弄乱父元素,你可以用options属性将选项传递给stectrum init,所以我认为我的更完整;)reddit不会将颜色选择器外部的更改传播到选择器