diff options
Diffstat (limited to 'library/jslider/js/jquery.dependClass-0.1.js')
-rw-r--r-- | library/jslider/js/jquery.dependClass-0.1.js | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/library/jslider/js/jquery.dependClass-0.1.js b/library/jslider/js/jquery.dependClass-0.1.js new file mode 100644 index 000000000..2636f6673 --- /dev/null +++ b/library/jslider/js/jquery.dependClass-0.1.js @@ -0,0 +1,56 @@ +/** + * jquery.dependClass - Attach class based on first class in list of current element + * + * Written by + * Egor Khmelev (hmelyoff@gmail.com) + * + * Licensed under the MIT (MIT-LICENSE.txt). + * + * @author Egor Khmelev + * @version 0.1.0-BETA ($Id$) + * + **/ + +(function($) { + $.baseClass = function(obj){ + obj = $(obj); + return obj.get(0).className.match(/([^ ]+)/)[1]; + }; + + $.fn.addDependClass = function(className, delimiter){ + var options = { + delimiter: delimiter ? delimiter : '-' + } + return this.each(function(){ + var baseClass = $.baseClass(this); + if(baseClass) + $(this).addClass(baseClass + options.delimiter + className); + }); + }; + + $.fn.removeDependClass = function(className, delimiter){ + var options = { + delimiter: delimiter ? delimiter : '-' + } + return this.each(function(){ + var baseClass = $.baseClass(this); + if(baseClass) + $(this).removeClass(baseClass + options.delimiter + className); + }); + }; + + $.fn.toggleDependClass = function(className, delimiter){ + var options = { + delimiter: delimiter ? delimiter : '-' + } + return this.each(function(){ + var baseClass = $.baseClass(this); + if(baseClass) + if($(this).is("." + baseClass + options.delimiter + className)) + $(this).removeClass(baseClass + options.delimiter + className); + else + $(this).addClass(baseClass + options.delimiter + className); + }); + }; + +})(jQuery);
\ No newline at end of file |