1/** 2 * jquery.dependClass - Attach class based on first class in list of current element 3 * 4 * Written by 5 * Egor Khmelev ([email protected]) 6 * 7 * Licensed under the MIT (MIT-LICENSE.txt). 8 * 9 * @author Egor Khmelev 10 * @version 0.1.0-BETA ($Id$) 11 * 12 **/ 13 14(function($) { 15 $.baseClass = function(obj){ 16 obj = $(obj); 17 return obj.get(0).className.match(/([^ ]+)/)[1]; 18 }; 19 20 $.fn.addDependClass = function(className, delimiter){ 21 var options = { 22 delimiter: delimiter ? delimiter : '-' 23 } 24 return this.each(function(){ 25 var baseClass = $.baseClass(this); 26 if(baseClass) 27 $(this).addClass(baseClass + options.delimiter + className); 28 }); 29 }; 30 31 $.fn.removeDependClass = function(className, delimiter){ 32 var options = { 33 delimiter: delimiter ? delimiter : '-' 34 } 35 return this.each(function(){ 36 var baseClass = $.baseClass(this); 37 if(baseClass) 38 $(this).removeClass(baseClass + options.delimiter + className); 39 }); 40 }; 41 42 $.fn.toggleDependClass = function(className, delimiter){ 43 var options = { 44 delimiter: delimiter ? delimiter : '-' 45 } 46 return this.each(function(){ 47 var baseClass = $.baseClass(this); 48 if(baseClass) 49 if($(this).is("." + baseClass + options.delimiter + className)) 50 $(this).removeClass(baseClass + options.delimiter + className); 51 else 52 $(this).addClass(baseClass + options.delimiter + className); 53 }); 54 }; 55 56})(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.