繁体   English   中英

jQuery插件编写:如何在代码中使用选项?

[英]Jquery plugin writing: How do I use the options in my code?

所以我要转换一个插件。 最初,我具有传递一些变量的传统javascript函数,但我想使其成为带有选项的完整Jquery插件。 该文档显示了如何设置它们,但没有显示如何在代码中使用它们。 下面是一些代码:

jQuery.fn.placeholderRX = function(options) {
    var settings = jQuery.extend({
        hoverColor: '#fff',
        addClass: 'null',
        textColor: '#FBFBFB'        
    }, options);

    var $this = $(this);

    $this.children('.inputSpan').each(function() {      
            $(this).children('.inputText').hover( 
                function() {
                    $input.children('.input').css('background-color', hoverColor);
                },
                function() {
                    $input.children('.input').css('background-color', revertColor);
                }
            );
        }       
    });
};

如何将颜色选项值传递给它下面的悬停功能? 或者更简单地说,我可以将选项值传递给变量吗?

您已经声明了一个名为settings的变量。 您可以使用settings.hoverColor访问该对象的hoverColor属性:

$input.children('.input').css('background-color', settings.hoverColor);

插件的options参数也将是一个对象。 传入时, extend方法将合并options对象和“ defaults”对象的内容,然后将合并结果分配给settings

以下应该工作:

$input.children('.input').css('background-color', settings.hoverColor);

或jcreamer898所说的同样有效:

$input.children('.input').css('background-color', settings['hoverColor']);

这应该工作...

$input.children('.input').css('background-color', settings['hoverColor'])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM