Jquery 当你离开虹膜颜色选择器时,如何关闭它?

Jquery 当你离开虹膜颜色选择器时,如何关闭它?,jquery,wordpress,colors,Jquery,Wordpress,Colors,我正在Wordpress插件中使用。我可以让它显示,然后在关联的输入中显示单击的值,但是有一个问题 我无法摆脱这个盒子!有没有一种方法可以在你点击它的时候让它消失 我正在使用这个简单的调用调用iris- jQuery(document).ready(function($){ $('.colour-picker').iris(); }); 常识告诉我,我应该能够将它作为一个选项传递给.iris()函数,以满足这一特定需求,但在中找不到对此类选项的任何引用 我发现的一个秘密是,您可以调用h

我正在Wordpress插件中使用。我可以让它显示,然后在关联的输入中显示单击的值,但是有一个问题

我无法摆脱这个盒子!有没有一种方法可以在你点击它的时候让它消失

我正在使用这个简单的调用调用
iris
-

jQuery(document).ready(function($){
    $('.colour-picker').iris();
});
常识告诉我,我应该能够将它作为一个选项传递给
.iris()
函数,以满足这一特定需求,但在中找不到对此类选项的任何引用

我发现的一个秘密是,您可以调用
hide
方法,但它列出的所有方法都是
$(element).iris('hide')
,没有解释如何将其链接到第一步调用
iris
的特定输入,或者如何检测用户是否已从
iris

是否有人使用了
iris
,并且知道我如何才能实现我的目标?谢谢

其他-下面是一个示例,演示了所描述的问题。调用iris的JS可以在JS部分的底部找到。

您可以像下面这样尝试

$('input:not(.colour-picker)').iris('hide');

您可以尝试以下方法:

jQuery(document).ready(function ($) {    
    $('.colour-picker').iris();    
    $(document).click(function (e) {
        if (!$(e.target).is(".colour-picker, .iris-picker, .iris-picker-inner")) {
            $('.colour-picker').iris('hide');
            return false;
        }
    });
    $('.colour-picker').click(function (event) {
        $('.colour-picker').iris('hide');
        $(this).iris('show');
        return false;
    });
});

不管它值多少钱,你都不需要直接给iris打电话。从3.5开始,WordPress core定义了一个名为wpColorPicker()的包装器方法,该方法通过一些附加功能实现iris:

这个包装器负责为您隐藏和显示选择器,并跟踪各个实例


如果你正在构建一个WP插件,那么最好使用他们的包装器,因为他们将来会向其添加新功能。另外,如果他们决定使用iris以外的其他库,您的插件代码可能会中断。包装器将防止这种情况发生。

您能创建一个JSFIDLE吗?当然,我已经更新了我的问题。不过,我将在什么上下文中声明它?在
ready
中简单地声明它将导致错误,因为在
iris
初始化之前,我将尝试调用方法
hide
。谢谢,我们现在正在取得进展。但有两个问题-1:我有多个实例,从一个调用
iris
的输入点到另一个输入点仍然会产生2个颜色选择器。2:一旦
iris
被隐藏,该实例就不能再显示了(大概是因为它是一个“隐藏”方法,而不是一个“关闭”方法,似乎不存在)。对不起,我测试得太差了。我已经更新了小提琴。我想它涵盖了一切:)对不起,我已经离开工作几天了。我测试了第一件事,它似乎成功了。谢谢。我已经在请求设置中添加了一个功能请求来自动执行此操作。希望他们会注意到,因为如果我是唯一一个有这个问题的人,我会感到惊讶…是的,这肯定是一个OOTB功能。这对我帮助很大。谢谢。