当您实例化一个Picker实例时,您可以将它分配给一个变量,您可以通过该变量引用它。如果这个变量是在全局范围内定义的,那么您可以从代码中的任何地方访问这个实例,从而访问它的所有方法。
下面是一个简单的示例,我们对两个不同的div重复使用相同的选择器:
var picker = new Picker();
function changePicker(e) {
picker.movePopup({
parent: e.currentTarget
}, true);
}
document.getElementById("divA").addEventListener("click", changePicker);
document.getElementById("divB").addEventListener("click", changePicker);
picker.onDone = function(color) {
this.settings.parent.style.backgroundColor = color.rgbaString;
};
<script src="https://unpkg.com/vanilla-picker@2.8.0/dist/vanilla-picker.min.js"></script>
<div id="divA">TestA</div>
<div id="divB">TestB</div>
这将设置一个DIV的backgroundColor,只要按下picker的done按钮。如果您看一下onDone回调函数,就会发现
this.settings
this.settings.parent