From a20a6377277a985fa596b0ea460d91b97f79b4a5 Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 13 Jul 2012 07:09:29 -0700 Subject: merge upstream, slider work, refactor ping module, language selection work --- library/jslider/js/jquery.dependClass-0.1.js | 56 ++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 library/jslider/js/jquery.dependClass-0.1.js (limited to 'library/jslider/js/jquery.dependClass-0.1.js') 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 -- cgit v1.2.3