http://www.bitacora.davidesperalta.com/ David Esperalta - Entrada "Mejorando el plugin StyleSwichter" de la bitácora Gesbit Bitácora personal, software, opinión http://www.bitacora.davidesperalta.com/mejorando-el-plugin-styleswichter/ http://www.bitacora.davidesperalta.com/mejorando-el-plugin-styleswichter/ Sun, 20 Apr 2008 18:48:23 +0200 <![CDATA[ Mejorando el plugin StyleSwichter ]]> Me gusta cómo ha quedado al cabo el plugin StyleSwichter para jQuery. Al cabo lo he reducido a una sola función, además de haberle añadido las opciones posibles relacionadas con la "cookie" que es preciso utilizar.

(function($){
 
  $.fn.StyleSwichter = function(options){
    var opts = $.extend({}, $.fn.StyleSwichter.defaults, options);
    var o = $.meta ? $.extend({}, opts, $this.data()) : opts;
    $('link').each(function(i){
      if(this.rel == 'stylesheet' && this.title == o.linkTitle){
        if(o.cssPath != ''){
          this.href = o.cssPath;
          $.cookie(o.cookieName,this.href,{
            path: o.cookiePath,
            expires: o.cookieDays,
            domain: o.cookieDomain,
            secure: o.cookieSecure
          });
        }else if($.cookie(o.cookieName)){
          this.href = $.cookie(o.cookieName);
        }
        return true;
      }
    });
    return false;
  };
 
  $.fn.StyleSwichter.defaults={
    cssPath: '',
    cookiePath: '',
    cookieDays: 30,
    cookieDomain: '',
    cookieSecure: false,
    linkTitle: 'styleswichter',
    cookieName: 'selected-style'
  };
 
})(jQuery);

Y para mí tengo que aún podría dársele alguna que otra vuelta. Que todavía podría mejorarse, sin complicarlo. Bueno. El caso es que no me he resistido a publicar aquí el código fuente. Como si pensara que fuera curioso...

]]>