Blame view

framework/thirdparty/jquery-selector/src/jquery.selector.specifity.js 1.04 KB
385d70ca   Administrator   Importers CRUD
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
  (function($) {
  
  	$.selector.SimpleSelector.addMethod('specifity', function() {
  		if (this.spec) return this.spec;
  		
  		var spec = [
  			this.id ? 1 : 0, 
  			this.classes.length + this.attrs.length + this.pseudo_classes.length, 
  			((this.tag && this.tag != '*') ? 1 : 0) + this.pseudo_els.length
  		];
  		$.each(this.nots, function(i,not){
  			var ns = not.specifity(); spec[0] += ns[0]; spec[1] += ns[1]; sspec[2] += ns[2]; 
  		});
  		
  		return this.spec = spec;
  	})
  
  	$.selector.Selector.addMethod('specifity', function(){
  		if (this.spec) return this.spec;
  		
  		var spec = [0,0,0];
  		$.each(this.parts, function(i,part){
  			if (i%2) return;
  			var ps = part.specifity(); spec[0] += ps[0]; spec[1] += ps[1]; spec[2] += ps[2]; 
  		});
  		
  		return this.spec = spec;	
  	})
  	
  	$.selector.SelectorsGroup.addMethod('specifity', function(){
  		if (this.spec) return this.spec;
  		
  		var spec = [0,0,0];
  		$.each(this.parts, function(i,part){
  			var ps = part.specifity(); spec[0] += ps[0]; spec[1] += ps[1]; spec[2] += ps[2]; 
  		});
  		
  		return this.spec = spec;	
  	})
  	
  	
  })(jQuery);