Sha256: 4d2f2f7cfe2e542a152764d9475aacd78582d6a1a1aab71889476ef72d55bb34

Contents?: true

Size: 1.38 KB

Versions: 78

Compression:

Stored size: 1.38 KB

Contents

/**
 * 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);

Version data entries

78 entries across 78 versions & 1 rubygems

Version Path
phcthemes_web_theme_pack-4.0.6 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-4.0.5 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-4.0.4 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-4.0.3 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-4.0.2 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-4.0.1 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-4.0.0 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-3.2.0 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-3.0.2 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-3.1.0 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-3.0.1 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-3.0.0 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-2.0.12 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-2.0.11 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-2.0.10 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-2.0.9 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-2.0.8 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-2.0.7 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-2.0.6 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js
phcthemes_web_theme_pack-2.0.5 app/assets/javascripts/themes/zoner/jquery-dependclass/dependclass.js