使用WP3.4定制器,当使用PostMessage并在您的JS中为一个选项工作时,您可以为另一个选项检索当前值吗?

时间:2012-06-25 作者:Jason

我目前正在撰写奥托的这篇很棒的文章:http://ottopress.com/2012/how-to-leverage-the-theme-customizer-in-your-own-themes/

对于我的问题,我有两个单独注册的设置,我想看看是否可以让它们在我的JS中协同工作。

enter image description here

正如本文所解释的,有了这两种设置,我可以使用jQuery绑定在每个设置更改时实时更改站点上的内容。然而,我想知道的是,当我在处理一个选项时,是否可以从另一个选项中获取当前值?

希望这个截图能说明我的意思。

enter image description here

注意:在这个示例中,我可能会想出一些解决方法来使用jQuery获取当前设置的字体大小,以确定当前值,但我更多的是作为一个通用示例询问这是否可行。

提前感谢!

1 个回复
SO网友:Fabien Quatravaux

您可以执行以下操作:

// ----------------------------------------------------------
// Primary Typograpy
// ----------------------------------------------------------

var current;

/* Primary Typography - Size */
wp.customize(\'typography_primary_size\', function( value ) {
    current.size = value;
    value.bind(function(size) {
        $(\'h1, h2, h2, h4, h5, h6\').css(\'font-size\', size);
    });
});

/* Primary Typography - Face */
wp.customize(\'typography_primary_face\', function( value ) {
    current.face = value;
    value.bind(function(face) {
        if(current.size.get() == \'whatever\'){
            current.size.set(\'othervalue\');
        } else {

        }
    });
});
抱歉,奥托,这可能有点粗糙,但它是有效的。另外,您还可以使用set 方法:current.size.set(\'othervalue\') 将触发h1到h6标题的自定义css更改。

结束

相关推荐

Profile Field In Admin Bar

我在用户配置文件中添加了一个名为“当前状态”的字段,用户在其中填写自己的信息,如电子邮件、网站等。如何使此字段仅显示给作者,并将其显示在管理员/作者栏中,以便他们无需进入配置文件区域即可进行更新?提前感谢!