我应该在jQuery插件元素中添加样式?

时间:2009-08-20 02:56:40

标签: jquery jquery-plugins coding-style

在脚本本身或外部样式表中为jQuery插件生成的元素添加样式是不错的做法?

(function($) {
    $.myplugin= function(options) {
        var options = jQuery.extend({
            backgroundColor: '#0066cc',
            borderColor: '#003366',
            borderWidth: '1px',
            fontColor: '#66ccff'
            // etc...
        }, options);
        var html = '<div id="__plugin">...</div>';
        var $plugin= $(html).css({
                            'color': options.fontColor,
                            'background-color': options.backgroundColor
                            'border-color': options.borderColor,
                            'border-width': options.borderWidth,
                            'display': 'none'
                            // etc...                                
                        });         
        return $plugin.appendTo(document.body);
    };
})(jQuery);

我是否应该采用上述方法并让插件的用户传入参数来自定义样式,还是应该消除样式元素并使用外部样式表?

我的直觉反应告诉我应该使用后者,但我很好奇标准做法是什么,或者是否有一个?

1 个答案:

答案 0 :(得分:3)

如果可以提供帮助,您不应该在插件中真正包含样式。最好的办法是将html作为插件的参数公开。请参阅有关此事的文章:

http://www.learningjquery.com/2009/03/making-a-jquery-plugin-truly-customizable

詹姆斯·帕德尔西(James Padolsey)就是现场!